OpenStack|OpenStack all-in-one环境搭建

Kolla简介 Kolla项目起源于TripleO项目,聚焦于使用Docker容器部署OpenStack服务。该项目由Cisco于2014年9月提出,是OpenStack 社区Big Tent开发模式下的孵化项目。Kolla项目是一个支持Openstack服务以容器的方式部署,借助ansible部署工具可以简单的扩展到多个节点。同时,又借助于使用 heat 来编排 Kolla 集群。
安装kolla,必须自己build镜像,由于网络的原因,经常会导致在build 镜像的时候失败。因此可以直接采用kolla官方提供的镜像文件,这样就不需要自己build镜像的环节,也就是搭建本地的docker registry。本次部署,我是直接采用公司的镜像仓库。
一、安装基础包

yum update
yum install epel-release#启用EPEL的repo源
yum install python-devel libffi-devel gcc openssl-devel git python-pip#安装所需的依赖包
pip install --upgrade pip#这里踩过坑,先升级一下
二、安装docker
1. 设置repo,配置docker源
目前最新版本的Docker是1.13.1,Kolla目前支持的Docker是1.12.x,所以我们要指定Docker的版本来安装,并且一定要采用Docker官方的源。为yum添加一个repo文件,在centos7下面可以直接运行下面的代码。这个repo的目的就是为了让我们的yum可以根据repo文件里提供的连接去检索docker最新的安装包。
tee /etc/yum.repos.d/docker.repo << 'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
2. 安装Docker
yum install docker-engine-1.12.5 docker-engine-selinux-1.12.5
3. 设置docker
mkdir /etc/systemd/system/docker.service.d
tee /etc/systemd/system/docker.service.d/kolla.conf << 'EOF'
[Service]
MountFlags=shared
EOF
4. 重启docker服务
systemctl daemon-reload
systemctl enable docker
systemctl restart docker
5. 设置docker采用私有仓库
vim /usr/lib/systemd/system/docker.service
#ExecStart=/usr/bin/dockerd
ExecStart=/usr/bin/dockerd --insecure-registry XXXXXXX:XXXX#镜像仓库地址:端口号
6. 重启docker服务
systemctl daemon-reload
systemctl restart docker
三、安装Ansible
yum install ansible
四、kolla-ansible 1. 下载kolla-ansible
cd /home
git clone http://git.trystack.cn/openstack/kolla-ansible -b stable/ocata
2. 安装kolla-ansible
cd kolla-ansible
pip install .
3. 复制相关文件
cp -r etc/kolla /etc/kolla/
cp ansible/inventory/* /home/
4. 如果在虚拟机里装kolla,需要把virt_type=qemu,默认是kvm
mkdir -p /etc/kolla/config/nova
cat << EOF > /etc/kolla/config/nova/nova-compute.conf
[libvirt]
virt_type=qemu
cpu_mode = none
EOF
5. 生成密码文件,这是登录Dashboard,admin使用的密码,可以根据自己需要进行修改
kolla-genpwd
vim /etc/kolla/passwords.yml
OpenStack|OpenStack all-in-one环境搭建
文章图片

6. 编辑文件
vim /etc/kolla/globals.yml
kolla_install_type: "source"
openstack_release: "4.0.3"
docker_registry: "XXXXXX"#镜像仓库地址+端口号
docker_namespace: "lokolla"
7. 安装OpenStack
kolla-ansible deploy -i /home/all-in-one
五、验证部署
1. 完成部署
kolla-ansible post-deploy
2. 安装OpenStack client端
pip install python-openstackclient
3. 编辑文件/usr/share/kolla-ansible/init-runonce,网络需要根据实际情况修改,10.0.2.0的网络是通过路由器访问互联网,配置好这个,装完虚拟机就可以直接ping通。
vim /usr/share/kolla-ansible/init-runonce
EXT_NET_CIDR='10.0.2.0/24'
EXT_NET_RANGE='start=10.0.2.150,end=10.0.2.199'
EXT_NET_GATEWAY='10.0.2.1'
4. 使用 init-runonce脚本创建基础环境
source /etc/kolla/admin-openrc.sh
cd /usr/share/kolla-ansible
./init-runonce
5. 根据最后的命令提示,可直接创建虚拟机
openstack server create \
--image cirros \
--flavor m1.tiny \
--key-name mykey \
--nic net-id=2ba93782-71e2-44d6-ad64-796c5853dcce \
demo1
OpenStack|OpenStack all-in-one环境搭建
文章图片

【OpenStack|OpenStack all-in-one环境搭建】
转载于:https://www.cnblogs.com/viviane/p/10456034.html

    推荐阅读