一、初识OpenStack
首先通过Open Stack官方架构图总体认识OpenStack

Nova是整个Openstack里面最核心的组件。OpenStack云实例生命期所需的各种动作都将由Nova进行处理和支撑,它负责管理整个云的计算资源、网络、授权及测度;
Neutron负责Openstack整个云的网络;
Glance提供相应的镜像文件;
Swift和Cinder提供Openstack整个云实例的卷存储及对象存储;
Keystone为所有的OpenStack组件提供认证和访问策略服务,主要对(但不限于)Swift、Glance、Nova等进行认证与授权。
Horizon是一个用以管理、控制OpenStack服务的Web控制面板。用户可以通过这个界面对OpenStack状态进行查看和管理。
二、OpenStack部署
在部署前需要规划好部署环境,规划一个VIP,三个高可用的控制节点,计算点若干个,这个只是一个测试环境,就部署一个计算点即可。
192.168.0.100 controller
192.168.0.101 compute
192.168.0.102 storage
2.1、基础环境准备
2.1.1、配置主机名和Hosts文件
#vi etc/hostname
#hostnamectl set-hostname controller
2.1.2、关闭防火墙、SELinux、NetworkManager、libvirtd
#systemctl stop firewalld
#systemctl disable firewalld
#vi etc/selinux/config
SELINUX=disabled
#systemctl stop NetworkManager
#systemctl disable NetworkManager
#systemctl stop libvirtd
#systemctl disable libvirtd
2.1.3、配置免密登陆
#ssh-keygen
2.2、安装环境部署
2.2.1 controller安装必要的软件包
#yum install python-devel libffi-devel gcc openssl-devel libselinux-python
2.2.2 安装ansible
#yum install ansible
2.2.3 安装docker
#yum install docker-ce
2.2.4 安装kolla-ansible
pip install kolla-ansible
2.2.5 部署Open Stack
配置kolla-ansible
编辑/etc/ansible/ansible.cfg
编辑multinode文件,分配好节点的角色
最后,执行部署:
#kolla-ansible -i /etc/kolla/multinode deploy
执行部署后的初始化工作
/usr/share/kolla-ansible/init-runonce




