用容器来部署OpenStack的各组件已经成为业内流行的趋势,尤其是使用了docker的kolla-ansible,更是深受广大OpenStacker的青睐,实践如下,
使用的ubuntu16.04,先安装docker环境,
apt-get install apt-transport-https ca-certificates curl software-properties-common,
curl -fsSL https://download.docker.com/linux/ubuntu/gpg apt-key add -,
apt-key fingerprint 0EBFCD88,
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable",
apt-get update,
apt-get install docker-ce,
然后安装pip和ansible,
apt-get install python-pip,
pip install -U pip,
apt-get install python-dev libffi-dev gcc libssl-dev python-selinux,
pip install -U ansible,
再安装kolla-ansible,注意这里目前要指定4.0.0版本,高版本有问题,
pip install "kolla-ansible==4.0.0",
接下来对kolla-ansible进行配置,
mkdir /etc/kolla,
cp /usr/local/share/kolla-ansible/etc_examples/kolla/globals.yml /etc/kolla/globals.yml,
cp /usr/local/share/kolla-ansible/etc_examples/kolla/passwords.yml /etc/kolla/passwords.yml,
vim /etc/kolla/globals.yml,
根据实际情况修改以下参数,
kolla_internal_vip_address,
network_interface,
neutron_external_interface,
增加以下配置,
neutron_plugin_agent: "openvswitch"
nova_console: "novnc"
enable_haproxy: "no"
enable_heat: "yes"
enable_horizon: "yes"
enable_openvswitch: "{{ neutron_plugin_agent != 'linuxbridge' }}"
自动生成各服务的密码,kolla-genpwd,
开始部署,kolla-ansible deploy,
部署完成后,通过docker ps查看各服务,
自动生成openrc文件,kolla-ansible post-deploy,
安装openstackclient,pip install python-openstackclient,
测试openstack命令,
从/etc/kolla/admin-openrc.sh中查到admin的密码,登录dashboard,
进入horizon容器,能够看到使用了host的network stack,
由于docker具有秒停秒起的能力,这样的OpenStack环境的健壮性极高。
领取专属 10元无门槛券
私享最新 技术干货