Kolla-ansible单机部署OpenStack Train

news/2024/7/18 13:17:26 标签: ansible, openstack

系统环境初始化

1、安装基础软件包

yum install -y python-devel libffi-devel gcc openssl-devel libselinux-python git wget vim yum-utils

2、设置主机名 以及hosts

hostnamectl set-hostname openstack && bash
vim /etc/hosts   #设置hosts 先清空hosts文件 然后添加如下
192.168.122.10	openstack	openstack
192.168.122.10	kolla	kolla
#或者使用
tee /etc/hosts <<-'EOF'
192.168.122.10 openstack openstack
192.168.122.10 kolla kolla
EOF

3、关闭系统安全设置

#关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
#关闭网络管理组件
systemctl stop NetworkManager && systemctl disable NetworkManager
#关闭selinux
setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

安装pip和docker

1、pip是python的包管理器,ansible是基于python开发的,因此需要安装pip,安装相应的python包,默认系统都不带pip。

#下载pip
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
#安装pip
python get-pip.py 
#更新其他包
pip install -U setuptools

2、安装docker,docker是本次部署的关键,因此需要安装docker。

#添加docker软件仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache
#安装docker-ce不是docker
yum -y install docker-ce
#启动服务
systemctl enable docker
systemctl start docker
#修改docker镜像的源
sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["http://hub-mirror.c.163.com"]
     }
EOF	
systemctl daemon-reload
service docker restart

3、配置pip加速

cd ~
mkdir .pip
tee .pip/pip.conf << EOF 
[global]
[index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
EOF

ansible___kollaansible_85">安装ansible kolla-ansible

kolla-ansible部署是需要使用ansible,它是一款自动化的工具,是基于python开发。因此ansible是必须部署。

#获取epel的yum文件,否则ansible可能找不到包
yum install epel-release -y  
#安装ansible
yum install ansible  -y


#试过很多次都要先安装这个报告
pip install pbr 
#开始安装kolla-ansible,要带上--ignore-installed ,否则可能会报错
pip install -i https://mirrors.aliyun.com/pypi/simple/ kolla-ansible --ignore-installed
#创建kolla的文件夹,后续部署的时候很多openstack的配置文件都会在这
mkdir -p /etc/kolla
chown $USER:$USER /etc/kolla
#复制ansible的部署配置文件
cp -v /usr/share/kolla-ansible/ansible/inventory/* /etc/kolla/.
#负责gloable.yml和password.yml到目录
cp -rv /usr/share/kolla-ansible/etc_examples/kolla/* /etc/kolla/.
#检查`etc/kolla`文件夹下的文件

修改配置文件

1、修改ansible的配置文件。

vi /etc/ansible/ansible.cfg
[defaults]
host_key_checking=False #line 71
pipelining=True #line 401
forks=100 #line 20

2、all-in-one配置节点清单文件 /etc/kolla/all-in-one

如果配置本地免密登录可以不需要使用

ansible_user=root ansible_password=openstack ansible_become=true

使用vim进行替换

1,$s/localhost       ansible_connection=local/openstack ansible_user=root ansible_password=openstack ansible_become=true/
[control]
openstack ansible_user=root ansible_password=openstack ansible_become=true

[network]
openstack ansible_user=root ansible_password=openstack ansible_become=true

[compute]
openstack ansible_user=root ansible_password=openstack ansible_become=true

[storage]
openstack ansible_user=root ansible_password=openstack ansible_become=true

[monitoring]
openstack ansible_user=root ansible_password=openstack ansible_become=true

[deployment]
openstack ansible_user=root ansible_password=openstack ansible_become=true

3、global.yml添加

#选择下载的基础镜像
kolla_base_distro: "centos"
#选择的安装方法,2选1。binary二进制安装,source源码安装
kolla_install_type: "binary"
#选择OpenStack的版本标签,
openstack_release: "yoga"
#OpenStack内部管理网络地址,通过该IP访问OpenStack Web页面进行管理。如果启用了高可用,需要设置为VIP(浮动IP)
kolla_internal_vip_address: "192.168.122.10"
#OpenStack内部管理网络地址的网卡接口
network_interface: "ens33"
#此网卡应该在没有IP地址的情况下处于活动,如果不是,那么OpenStack云平台中的云主机实例将无法访问外部网络。(存在IP时br-ex桥接就不成功)
neutron_external_interface: "ens34"
#关闭高可用
enable_haproxy: "no"
#关闭cinder(块存储)
enable_cinder: "yes"
enable_cinder_backend_lvm: "yes"
#指定nova-compute守护进程使用的虚拟化技术。(kvm好像有点问题,大家可以试试,看看你们能不能过nova下载)nova-compute>是一个非常重要的守护进程,负责创建和终止虚拟机实例,即管理虚拟机实例的生命周期。
nova_compute_virt_type: "qemu" #在物理机上部署时无需设置(默认kvm) ,仅在虚拟机中部署kolla-ansible-openstack时设置qemu

4、生成密码 并修改webui的密码

kolla-genpwd
vim /etc/kolla/passwords.yml
/keystone_admin_password

5、cinder的配置准备,官方文档未说明的点,需要提前创建好cinder使用的vgs(如果使用cinder请忽略。。)

pvcreate /dev/sdb
vgcreate cinder-volumes /dev/sdb

开始部署

环境预检查 没问题直接next

kolla-ansible -i /etc//kolla/all-in-one prechecks

拉取镜像 时间有点长 大概15Minutes

kolla-ansible -i /etc/kolla/all-in-one pull

正式部署 大概15Minutes

kolla-ansible -i /etc/kolla/all-in-one deploy

验证安装

kolla-ansible -i /etc/kolla/all-in-one post-deploy
cat /etc/kolla/admin-openrc.sh
 /etc/kolla/all-in-one pull

正式部署 大概15Minutes

kolla-ansible -i /etc/kolla/all-in-one deploy

验证安装

kolla-ansible -i /etc/kolla/all-in-one post-deploy
cat /etc/kolla/admin-openrc.sh

http://www.niftyadmin.cn/n/5351397.html

相关文章

opencv#35 连通域分析

连通域分割原理 像素领域介绍: 4邻域是指中心的像素与它邻近的上下左右一共有4个像素&#xff0c;那么称这4个像素为中心像素的4邻域。 8邻域是以中心像素周围的8个像素分别是上下左右和对角线上的4个像素。 连通域的定义(分割)分为两种:以4邻域为相邻判定条件的连通域分割和…

Dubbo框架注册中心-Zookeeper搭建

Dubbo 是阿里巴巴公司开源的高性能、轻量级的Java RPC框架&#xff0c;致力于提供高性能。 Dubbo官网 本篇开始dubbo的第一篇&#xff0c;注册中心 ZooKeeper 环境搭建。 环境前置&#xff1a;由于Zookeeper是基于Java环境&#xff0c;必须安装有JDK。查看命令 java -version。…

机器学习 | 如何使用 Seaborn 提升数据分析效率

Seaborn和Matplotlib都是Python可视化库&#xff0c;它们都可以用于创建各种类型的图表。但是&#xff0c;Seaborn 和Matplotlib在概念和设计上有一些不同。 Matplotlib虽然已经是比较优秀的绘图库了&#xff0c;但是它有个今人头疼的问题&#xff0c;那就是API使用过于复杂&am…

Django学习之预备知识

七、Django学习之预备知识 其他关于Python Web开发笔记&#xff1a;&#xff08;如果遇到问题可以一起交流~&#xff09; 一、Flask学习之HTML-CSDN博客 二、Flask学习之CSS-CSDN博客 【接上篇】二、Flask学习之CSS&#xff08;下篇&#xff09;-CSDN博客 三、Flask学习之B…

微信小程序如何搜索iBeacon设备

1.首先在utils文件夹下创建bluetooth.js和ibeacon.js 2.在 bluetooth.js文件中写入 module.exports {initBluetooth: function () {// 初始化蓝牙模块wx.openBluetoothAdapter({success: function (res) {console.log(蓝牙模块初始化成功);},fail: function (res) {console.l…

Linux系统中Docker的安装及常用组件的安装

什么是Docker Docker是一个开源的应用容器引擎&#xff0c;它可以让开发者将应用程序及其依赖项打包到一个可移植的镜像中&#xff0c;并发布到任何流行的操作系统上。Docker使用沙箱机制来隔离容器&#xff0c;使其相互独立&#xff0c;并简化了应用程序的部署和管理。沙箱机…

Byte Pair Encoding(BPE)算法及代码笔记

Byte Pair Encoding&#xff08;BPE&#xff09;算法 BPE算法是Transformer中构建词表的方法&#xff0c;大致分为如下几个步骤&#xff1a; 将语料中的文本切分为字符统计高频共现二元组将共现频率最高的二元组合并加入词表重复上述第二和第三直到词表规模达到预先设置的数量…

使用websocket后端接入文心一言

最近再写项目练手&#xff0c;想着最近大模型那么火&#xff0c;也想接入项目来玩一玩&#xff0c;于是去了解了一下相关的api和通信协议&#xff0c;最后选择了文心一言进行集成&#xff0c;国内的相对稳定。ERNIE-Bot-turbo - 千帆大模型平台 | 百度智能云文档 (baidu.com) …