kolla多节点部署openstack

准备两台机子
主节点:master
计算节点:node1
准备两块空白的盘,做后端存储用
开始之前:配置好hosts内容,无密钥连接,不做多余赘述
开始安装(双节点,#代表两个节点都要安装)

PV VG
pvcreate /dev/sdb
vgcreate cinder-volumes /dev/sdc //盘符根据情况而定

#yum install epel-release -y
#yum update -y 
#yum install python-pip -y
#pip install -U pip
#yum install python-devel libffi-devel vim gcc git openssl-devel libselinux-python -y
安装docker
#curl -sSL https://get.daocloud.io/docker | sh
#pip install -U docker 安装Docker Python服务
#mkdir -p /etc/systemd/system/docker.service.d
#tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF'
[Service]
MountFlags=shared
EOF
#systemctl daemon-reload &&
systemctl restart docker && systemctl enable docker

容器已经全部上传到github上面
http://tarballs.openstack.org/kolla/images/

master节点安装

安装ansible

yum install ansible -y
pip install ansible==2.5.0 (这个版本稳定)
pip install kolla-ansible
git clone https://github.com/openstack/kolla
git clone https://github.com/openstack/kolla-ansible
复制配置文件global.yml和password.yml到/etc/kolla/global.yml是Kolla-ansible最主要的配置文件,password.yml包含keystone和数据库的全部密码。

cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/
复制ansible的inventory文件到当前目录,inventory文件告诉ansible要在哪些node上执行命令,这里有all-in-one和multinode两种
cp /usr/share/kolla-ansible/ansible/inventory/* .
使用下面的命令检查当前主机是否支持硬件加速,由于是在virtualbox的虚机上安装,所以这里返回是0
egrep -c '(vmx|svm)' /proc/cpuinfo
在这种情况下要配置libvirt使用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
安装kolla和kollla-ansible依赖
pip install -r kolla/requirements.txt
pip install -r kolla-ansible/requirements.txt
kolla密码
kolla-genpwd
ceph准备
 ansible  all -m shell -a 'parted /dev/sdd -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1'  
 ansible  all -m shell -a 'parted /dev/sdc -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_J 1 -1' 
新建/etc/kolla/config/ceph.conf,指定ceph的一些参数,如副本数:
[global]  
osd pool default size = 1  
osd pool default min size = 1  (几块盘就写几个)
修改/etc/kolla/globals.ymll配置文件参数的
ceph_enable_cache=no
还有疑问可以百度 ceph in kolla
openstack 服务配置的修改,举例修改nova的virt_type为qemu
新建/etc/kolla/config/nova.conf
[libvirt]  
virt_type=qemu  
修改globals.yml配置文件
[root@master ~]# cat /etc/kolla/globals.yml |grep -v ^$ |grep -v ^#
---
kolla_base_distro: "centos"
kolla_install_type: "source"
openstack_release: "queens"
kolla_internal_vip_address: "172.18.33.253"(第一张网卡内的IP地址)
docker_namespace: "kolla"
network_interface: "ens33"
neutron_external_interface: "ens34"
enable_central_logging: "yes"
enable_ceph: "yes"
enable_ceph_rgw: "yes"
enable_cinder: "yes"
glance_backend_ceph: "yes"
cinder_backend_ceph: "{{ enable_ceph }}"
tempest_image_id:
tempest_flavor_ref_id:
tempest_public_network_id:
tempest_floating_network_name:
修改multinode(后面的不用改)
[root@master ~]# cat multinode |grep -v ^# |grep -v ^$
[control]
master
[network]
master
node
[inner-compute]
[external-compute]
master
node
[compute:children]
inner-compute
external-compute
[monitoring]
master
[storage]
node
[deployment]
master       ansible_connection=local
[baremetal:children]
control
network
compute
storage
monitoring
………………
检查是否kolla环境依赖
kolla-ansible -i ./multinode bootstrap-servers
先检查有无错误:
kolla-ansible -i multinode prechecks  
没有报错直接进行安装:
kolla-ansible -i multinode deploy  
直至安装完成
安装命令行,openstack,glance,neutron
pip install python-openstackclient python-glanceclient python-neutronclien
生成rc文件(生成的文件在/etc/kolla/下面):
 kolla-ansible -i multinode post-deploy
编辑 /usr/share/kolla-ansible/init-runonce,
网络需要根据实际情况修改
EXT_NET_CIDR='192.168.12.0/24'
EXT_NET_RANGE='start=192.168.12.30,end=192.168.12.40'
EXT_NET_GATEWAY='192.168.12.1'
192.168.12.0的网络,就是第二张网卡接的网络,这个网络是通过路由器访问互联网,需要根据大家的实际情况配置,装完虚拟机就可以直接ping通。
. /usr/share/kolla-ansible/init-runonce

kolla-ansible -i multinode reconfigure  (后续修改配置文件,用这个来重新读取)

你可能感兴趣的:(kolla多节点部署openstack)