1、Openstack介绍
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合,为私有云和公有云提供可扩展的弹性的云计算服务,由 Rackspace和NASA共同开发的云计算平台,主要负责处理核心云计算服务,包括计算、网络、存储、身份和镜像服务。

2、Openstack的核心项目
计算(Compute)
对象存储(Object Storage)
镜像服务(Image Service)
身份服务(Identity Service)
网络&地址管理(Network)
块存储 (Block Storage)
UI 界面 (Dashboard)
测量 (Metering)
部署编排 (Orchestration)
数据库服务(Database Service)
3、基础环境配置
节点名称 |
CPU |
内存 |
磁盘 |
操作系统镜像 |
controlle节点 |
2VCPU |
4GB |
50GB |
CentOS-7-x86_64-Minimal-1804.iso |
Compute1节点 |
2VCPU |
4GB |
50GB |
CentOS-7-x86_64-Minimal-1804.iso |
Vmware Workstation虚拟机开启虚拟化引擎:

4、修改网络
master节点

note节点

5、安装Keystone服务
①安装keystone服务软件包
yum -y install openstack-keystone httpd mod_wsgi

cd /etc/yum.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
yum install python-devel
wget ftp://ftp.pbone.net/mirror/vault.centos.org/7.8./messaging/x86_64/qpid-proton/Packages/q2003/qpid-proton-c-0.28.0-1.el7.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/epel/testing/6.2019-05-29/x86_64/Packages/p/python2-qpid-proton-0.28.0-1.el7.x86_64.rpm
rpm -Uvh --replacepkgs python*.rpm --nodeps --force
yum -y install centos-release-openstack-train
②创建keystone数据库

③配置数据库连接

④为keystone服务创建数据表
su -s /bin/sh -c "keystone-manage db_sync" keystone

⑤创建令牌

⑥创建签名秘钥和证书

⑦定义用户、租户和角色
cat /etc/keystone/admin-openrc.sh

a、创建服务
openstack service create --name keystone --description "OpenStack Identity" identity

b、创建认证端点
openstack endpoint create --region RegionOne identity public http://controller:5000/v3
openstack endpoint create --region RegionOne identity internal http://controller:5000/v3
openstack endpoint create --region RegionOne identity admin http://controller:35357/v3

c、创建域
openstack domain create --description "Default Domain" default
复制

d、创建租户
openstack project create --domain default --description "Admin Project" admin

e、创建用户
openstack user create --domain default --password 000000 admin

f、创建角色
openstack role create admin

g、添加admin角色到admin用户和租户
openstack role add --project admin --user admin admin

h、创建service项目
openstack project create --domain default --description "Service Project" service

i、创建demo租户
openstack project create --domain default --description "Demo Project" demo

j、创建demo用户
openstack user create --domain default --password 000000 demo

k、创建user角色
openstack role create user

l、添加user角色到demo租户和用户
openstack role add --project demo --user demo user

m、清除环境变量

⑧创建admin-openrc.sh


⑨获取token测试

6、安装Glance服务
①安装glance镜像服务软件包
yum install -y openstack-glance
②创建glance数据库

③配置文件创建数据库连接

④为镜像服务创建数据库表

⑤创建用户
openstack user create --domain default --password 000000 glance
openstack role add --project server --user glance admin

⑥配置镜像服务

⑦创建Endpoint和API端点
openstack endpoint create --region RegionOne image public http://controller:9292
openstack endpoint create --region RegionOne image internal http://controller:9292
openstack endpoint create --region RegionOne image admin http://controller:9292
⑧启动服务

⑨测试上传镜像

7、安装Nova服务
①安装nova计算服务软件包
yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-console-nova-novncproxy openstack-nova-scheduler
②创建数据库

③配置数据库连接

④同步数据库

⑤创建用户
openstack user create --domain default --password 000000 nova
openstack role add --project service --user nova admin

⑥配置计算服务

⑦创建Endpoint和API端点
openstack service create --name nova --description "OpenStack Compute" compute
openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1/%\(tenant_id\)s
openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1/%\(tenant_id\)s
openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1/%\(tenant_id\)s

⑧启动服务

⑨验证nova

8、部署计算节点nova服务
①安装nova计算服务软件包
yum -y install openstack-nova-compute
②配置nova服务

③启动

④验证(在控制节点上)

9、安装Neutron服务
①创建neutron数据库

②创建用户
openstack user create --domain default --password 000000 neutron
openstack role add --project service --user neutron admin

③创建Endpoint和API端点
openstack service create --name neutron --description "OpenStack Networking" network
openstack endpoint create --region RegionOne network public http://controller:9696
openstack endpoint create --region RegionOne network internal http://controller:9696
openstack endpoint create --region RegionOne network admin http://controller:9696

④安装neutron网络服务软件包

⑤配置neutron服务
⑥编辑内核

⑦同步数据库

⑧启动服务

10、部署计算节点neutron服务
①安装软件包
yum -y install openstack-neutron-linuxbridge ebtables ipset
②配置neutron服务

③启动服务

④验证(在控制节点上)
