Kolla O版本部署

时间:2022-06-27 19:58:59

Kolla O版部署和之前的版本还是有些区别的,环境还是all-in-one

 

基本准备:

关闭Selina和firewalld

[root@kolla ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

 

[root@kolla kolla]# cat /etc/hostname
kolla.com

[root@kolla kolla]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.64.8.178 openstack.kolla.com kolla.com kolla

 

更新安装包

[root@kolla ~]#yum upgrade 

[root@kolla ~]#yum install epel-release

[root@kolla ~]#yum install python-devel libffi-devel gcc openssl-devel git python-pip

[root@kolla ~]#pip install -U pip

[root@kolla ~]#yum install -y ansible

 

安装docker

[root@kolla ~]#curl -sSL https://get.docker.io | bash

查看docker版本

[root@kolla ~]# docker --version
Docker version 17.06.0-ce, build 02c1d87

 

修改dockerMountFlags等于shard
[root@kolla ~]#mkdir -p /etc/systemd/system/docker.service.d
[root@kolla ~]#tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF'

[Service]

MountFlags=shared
EOF

启动docker服务

[root@kolla ~]#systemctl daemon-reload&&systemctl enable docker &&systemctl start docker

 

下载kolla

[root@kolla ~]#git clone https://github.com/openstack/kolla.git

[root@kolla ~]#cd kolla/

查看分支

[root@kolla kolla]# git branch -a
* (detached from origin/stable/ocata)
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/stable/newton
remotes/origin/stable/ocata

切换分支到ocata
[root@kolla kolla]# git checkout remotes/origin/stable/ocata

安装python依赖包

[root@kolla kolla]# pip install -r requirements.txt -r test-requirements.txt
[root@kolla kolla]# pip install tox

[root@kolla kolla]# ls etc/kolla/
kolla-build.conf

[root@kolla kolla]# tox -e genconfig

复制kolla-build.conf到 /etc/kolla
[root@kolla kolla]# cp -rv etc/kolla /etc/

安装kolla命令

[root@kolla kolla]#pip install .

 

下载kolla镜像,这里有2个方法:

方法一:

这个方法比较慢去docker上下载kolla打包好的镜像,有些特殊的镜像可能是因为墙的原因下载不到。常用的都是没有问题的build的时间会长些主要看网速。这样中方式就是比较简单

[root@kolla kolla]#kolla-build

 

方法二:

http://tarballs.openstack.org/kolla/images/  官方镜像下载,只提供当前openstack版本和master版本镜像下载(有的时候下载当前版本会提示没有权限,可能是没有更新好过一段时间下载就可以了)

有了这个镜像大家就可以不用第一个方法了

构建docker 私有仓库

docker run -d -v /opt/registry:/var/lib/registry -p 4000:5000 \
--restart=always --name registry registry:

解压镜像:

tar zxvf centos-source-registry-ocata.tar.gz -C /opt/registry/

查看docker私有仓库信息:

1查看docker镜像列表

http://10.64.8.178:4000/v2/_catalog

Kolla O版本部署

查看镜像的tag版本号

http://10.64.8.178:4000/v2/lokolla/centos-binary-aodh-api/tags/list

 {"name":"lokolla/centos-binary-aodh-api","tags":["4.0.3"]}

 

如果使用仓库模式,所有节点必须在配置一下docker的私有仓库地址

[root@ceph ~]# cat /etc/docker/daemon.json
{
"insecure-registries" : ["http://192.168.27.10:4000"]
}

 systemctl restart docker

如果不配置在最后推送的时候报如下错误:

 Kolla O版本部署

 

 

 

 

 

 

按照kolla-ansible,O版这里有了变化部署服务器由kolla-ansible负责

[root@kolla]#git clone http://git.trystack.cn/openstack/kolla-ansible -b stable/ocata

[root@kolla]#cp kolla-ansible/ansible/inventory/* .

[root@kolla]#cd kolla-ansible/

安装kolla-ansible

[root@kolla  kolla-ansible]#pip install .

 

将globals.yml  passwords.yml复制到  /etc/kolla/

[root@kolla  kolla-ansible]#cp -r etc/kolla /etc/kolla/

 

因为是虚拟机模拟这里就需要更改一下配置

mkdir -p /etc/kolla/config/nova
cat << EOF > /etc/kolla/config/nova/nova-compute.conf
[libvirt]
virt_type=qemu
cpu_mode = none
EOF

 

生成密码

[root@kolla ]kolla-genpwd

编辑 /etc/kolla/passwords.yml改dashboard 登录密码

keystone_admin_password: admin

 

 

 

 

编辑 /etc/kolla/globals.yml  文件

kolla_internal_vip_address: "192.168.27.11"  这个地址不能被占用keeplive生成VIP

kolla_install_type: "source"   有二两种方式一个是binary和source ,根据下载的镜像或者build镜像类型选择
openstack_release: "4.0.3"     默认是这个版本,如果是下载的镜像那么这里看docker images 上tag版本
docker_registry: "192.168.27.10:4000"       docker 私有库地址
docker_namespace: "lokolla"                 这个docker 私有库的一个命名空间的名字,默认可能不是这个
network_interface: "ens192"                 
neutron_external_interface: "ens224"

 

开始部署

[root@kolla ] kolla-ansible deploy -i /home/all-in-one

 

生成admin.sh文件,执行完成后在 /etc/kolla 目录下admin-openrc.sh

[root@kolla ]kolla-ansible post-deploy