all in one 方式
两块网卡,8G内存,20G存储,可以再加一个20G存储做块存储
首先配置epel源
[root@server1 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
安装依赖性
[root@server1 ~]# yum install python-devel libffi-devel gcc openssl-devel libselinux-python
[root@server1 ~]# yum install python-pip
创建pip的源
[root@server1 ~]# mkdir ~/.pip
[root@server1 .pip]# vim pip.conf
[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
安装ansible并进行配置
[root@server1 .pip]# yum install ansible
[root@server1 .pip]# vim /etc/ansible/ansible.cfg
[defaults]
host_key_checking=False
pipelining=True
forks=100
安装kolla-ansible并配置
[root@server1 ~]# pip install kolla-ansible==8.0.1
[root@server1 ~]# mkdir -p /etc/kolla
[root@server1 ~]# cp -r /usr/share/kolla-ansible/etc_examples/kolla/* /etc/kolla ##复制两个文件
[root@server1 kolla]# vim globals.yml
kolla_base_distro: "centos" ##镜像版本
kolla_install_type: "binary" ##安装方式
openstack_release: "stein" ##openstack版本
kolla_internal_vip_address: "192.168.223.100" ##支持负载均衡,这里的vip写本机的即可
network_interface: "ens33" ##对外接口
neutron_external_interface: "ens34" ##对内云主机接口
enable_haproxy: "no"
enable_cinder: "yes" ##时间同步
enable_cinder_backend_iscsi: "yes" ##iscsi后端
enable_cinder_backend_lvm: "yes"
enable_heat: "no" ##扩展节点
生成密码
[root@server1 kolla]# kolla-genpwd
所有密码保存在passwords.yml文件中
编辑网卡信息并激活
[root@server1 network-scripts]# vim ifcfg-ens34
BOOTPROTO=none
DEVICE=ens34
ONBOOT=yes
[root@server1 network-scripts]# ifup ens34
复制all-in-one配置文件
[root@server1 kolla]# cp /usr/share/kolla-ansible/ansible/inventory/all-in-one .
[root@server1 kolla]# ansible -i all-in-one all -m ping ##测试
安装docker
[root@server1 ~]# yum install docker-ce
配置阿里云镜像加速器
[root@server1 ~]# vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://yot2uoql.mirror.aliyuncs.com"]
}
[root@server1 kolla]# kolla-ansible -i all-in-one pull ##拉取镜像,时间很长
[root@server1 ~]# vim /usr/share/kolla-ansible/ansible/roles/baremetal/defaults/main.yml
enable_docker_repo: false ##现在提前安装好了docker不要再装一次
redhat_pkg_install:
- "{{ docker_yum_package }}" ##将这行删除
- git
- python-setuptools
- ntp
- sudo
块存储
[root@server1 ~]# pvcreate /dev/sdb
[root@server1 ~]# vgcreate cinder-volumes /dev/sdb
[root@server1 ~]# vim /etc/lvm/lvm.conf
filter = [ "a|vda|","a|vdb|", "r|.*|" ]
[root@server1 ~]# systemctl restart lvm2-lvmetad.service
kolla部署依赖项
[root@server1 kolla]# kolla-ansible -i all-in-one bootstrap-servers
预部署检测
[root@server1 kolla]# kolla-ansible -i all-in-one prechecks
部署
[root@server1 kolla]# kolla-ansible -i all-in-one deploy
部署完成直接就可以通过web访问openstack
输入用户名和密码,不知道密码的在/etc/kolla/passwords.yml文件中进行查询
安装openstack客户端
[root@server1 kolla]# pip install python-openstackclient
客户端装好了后还不能进行使用,因为缺少脚本,所以到/etc/kolla目录下安装脚本
[root@server1 kolla]# kolla-ansible post-deploy
执行脚本后就可以使用openstack命令