部署环境介绍:
环境:
Centos 7.3
Kolla 4.0
Openstack Ocata
两台虚拟机节点:
kolla1
配置:4CPU 8G 双网卡 /dev/sdb 200G 做存储盘
角色:部署节点+控制+网络+计算
ens32 100.100.100.1,管理+内部网络
ens33 无IP 外部网络
kolla2
配置:4CPU 8G 双网卡 /dev/sdb 200G 做存储盘
角色: 控制+网络+计算
ens32 100.100.100.2,管理+内部网络
ens33 无IP 外部网络
以下 *** 作在两个节点执行:
关闭selinux
编辑 /etc/selinux/config
SELINUX=disabled
关闭防火墙
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
firewall-cmd --state
部署NTP
yum install ntp -y
systemctl enable ntpd.service
systemctl start ntpd.service
设置相应的主机名和修改/etc/hosts文件
1)/etc/hostname
kolla1
2)/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
100.100.100.4 kolla1
100.100.100.5 kolla2
重启 *** 作系统
以下 *** 作在kolla1节点执行:
在kolla1上做ssh免密钥登录
# ssh-keygen
# ssh-copy-id kolla1
# ssh-copy-id kolla2
以下 *** 作在两个节点执行:
安装epel源和依赖组件
# yum install epel-release -y
# yum install -y python-pip python-devel libffi-devel gcc openssl-devel git
# pip install -U pip #更新pip
添加docker的yum源:
# tee /etc/yum.repos.d/docker.repo << 'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
查看默认下载的docker版本,为高版本,不合适,因此指定安装版本:
# yum install docker-engine-1.12.6 -y
修改docker服务参数,启用MountFlags=shared:
# mkdir -p /etc/systemd/system/docker.service.d
# tee /etc/systemd/system/docker.service.d/kolla.conf <<'EOF'
[Service]
MountFlags=shared
EOF
启动docker服务:
# systemctl daemon-reload
# systemctl enable docker
# systemctl start docker
# pip install -U docker-py
以下 *** 作在kolla1节点执行:
安装ansible并做相应的复制 *** 作:
# pip install -U ansible
# pip install kolla-ansible
# cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/kolla/
# cp /usr/share/kolla-ansible/ansible/inventory/* .
启用本地Registry:
注意:默认docker的registry是使用5000端口,与OpenStack有端口冲突,所以kolla使用的是4000端口
# docker run -d -v /opt/registry:/var/lib/registry -p 4000:5000 --restart=always --name registry registry
配置kolla全局配置文件:
# vim /etc/kolla/globals.yml
docker_registry: “100.100.100.1:4000”
docker_namespace: “lokolla”
network_interface: “ens32” #这张网卡是管理网络的网卡
neutron_external_interface: “ens33” #这张网卡是外部网络的网卡
kolla_install_type: “source”
openstack_release: “4.0.0”
kolla_internal_vip_address: “100.100.100.3”
备注:kolla_internal_vip_address,这个ip是一个没有使用的的ip地址,给haproxy使用作为虚拟IP
以下 *** 作在两个节点执行:
添加配置设置容器的访问为不安全访问:
# vi /usr/lib/systemd/system/docker.service
[Service]
ExecStart=/usr/bin/dockerd --insecure-registry 100.100.100.1:4000
重启docker:
# systemctl daemon-reload
# systemctl restart docker
查看cpu是否开启虚拟化:
# egrep -c ‘(vmx|svm)’ /proc/cpuinfo
4
如果数字大于0,则忽略。
如果数字为0,则不支持虚拟化,就不能使用kvm,只能用qemu,需要 *** 作下面两步:
# mkdir -p /etc/kolla/config/nova
# cat << EOF > /etc/kolla/config/nova/nova-compute.conf
[libvirt]
virt_type = qemu
cpu_mode = none
EOF
以下 *** 作在kolla1执行:
为/etc/kolla/passwords.yml生成随机密码:
# kolla-genpwd
编辑ansible清单,修改下面部分,其他默认:
# vi /usr/share/kolla-ansible/ansible/inventory/multinode
[control]
kolla1
kolla2
[network]
kolla1
kolla2
[compute]
kolla1
kolla2
[monitoring]
kolla1
kolla2
[storage]
kolla1
kolla2
下载kolla镜像包,注意下载binary或source包都可以,只要在globals.yml文件中的kolla_install_type 匹配即可:
# wget http://tarballs.openstack.org/kolla/images/centos-source-registry-ocata.tar.gz
# tar zxvf centos-source-registry-ocata.tar.gz -C /opt/registry/
检查清单:
# kolla-ansible prechecks -i /usr/share/kolla-ansible/ansible/inventory/multinode
检查通过:
PLAY RECAP *********************************************************************
kolla1 : ok=134 changed=0 unreachable=0 failed=0
kolla2 : ok=133 changed=0 unreachable=0 failed=0
开始部署:
# kolla-ansible deploy -i /usr/share/kolla-ansible/ansible/inventory/multinode
部署成功:
PLAY RECAP *********************************************************************
kolla1 : ok=354 changed=153 unreachable=0 failed=0
kolla2 : ok=288 changed=115 unreachable=0 failed=0
生成admin-openrc.sh文件,路径为/etc/kolla/admin-openrc.sh:
# kolla-ansible post-deploy
安装openstack client【两个节点都安装】:
# pip install -U python-openstackclient
加载环境变量:
# . /etc/kolla/admin-openrc.sh
初始化环境(可选),编辑:
# vi /usr/share/kolla-ansible/init-runonce
IMAGE_URL=http://download.cirros-cloud.net/0.3.4/
IMAGE=cirros-0.3.4-x86_64-disk.img
IMAGE_NAME=cirros
EXT_NET_CIDR=’200.200.200.0/24′
EXT_NET_RANGE=’start=200.200.200.100,end=200.200.200.200′
EXT_NET_GATEWAY=’200.200.200.2′
执行初始化:
# /usr/share/kolla-ansible/init-runonce
接下来就可以进入dashboard创建虚拟机了。
地址:100.100.100.3
帐号:admin
密码:为/etc/kolla/admin-openrc.sh内的密码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)