- 安装说明文档:https://docs.openstack.org/install-guide/openstack-services.html
- 配置文件说明:https://docs.openstack.org/ocata/config-reference/
- 下载虚拟机镜像:https://docs.openstack.org/image-guide/
1、准备基础虚拟机
1.1、安装服务器
1..1、虚拟机配置
- 内存:2G(越大越好)
- 处理器:2个(越多越好)
- 必须勾选虚拟化功能,否则openstack无法启动云主机。
- 网路适配器:2个
- 一个基于NAT
- 一个基于仅主机
1.1.2、设置网卡名称
- 在进入安装界面的时候把光标移动到Install CentOS7,按下tab键,在后面输入“net.ifnames=0 biosdevname=0”回车即可。
1.1.2、安装配置
![](https://i-blog.csdnimg.cn/blog_migrate/8c1dcbde167e62cdb0736b5775d3a3c0.png)
1.2、服务器配置
1.2.1、配置网络
1、配置eth0网卡(NAT)
- 能上网就行,有些选项删掉了
1 2 3 4 5 6 7 8 9 10 |
|
2、配置eth1网卡(仅主机)
1 2 3 4 5 6 7 8 |
|
3、重启网络服务
1 |
|
4、查看网卡配置
1.2.2、修改hostname
1 2 |
|
1.2.3、关闭防火墙、SELinux和NetworkManager
1 2 3 4 5 6 7 8 9 10 11 12 |
|
1.2.4、优化ssh
1 2 3 4 5 6 7 8 |
|
1.2.5、安装常用的基础命令
- 注意,不推荐使用epel源,因为可能会有不兼容的问题。
1 2 3 |
|
1.2.5、同步时间
- 注意,OpenStack使用队列进行异步操作,对时间同步要求比较严格。
1 2 3 4 5 6 7 8 9 |
|
1.2.6、关机做快照
- 后面所有需要的机器都会以该快照为基础进行创建。
1 |
|
2、开始安装OpenStack
2.1、OpenStack的部署架构图
2.2、机器规划
- 使用上面的虚拟机模板创建5个虚拟机。
- 10.1.1.11:CentOSLinuxrelease7.7.1908(Core),内存4G,CPU 2核。openstack控制节点
- 10.1.1.12:CentOSLinuxrelease7.7.1908(Core),内存2G,CPU 2核。openstack计算节点
- 10.1.1.13:CentOSLinuxrelease7.7.1908(Core),内存2G,CPU 2核。openstack计算节点
- 10.1.1.14:CentOSLinuxrelease7.7.1908(Core),内存2G,CPU 2核。公共组件
- 10.1.1.15:CentOSLinuxrelease7.7.1908(Core),内存2G,CPU 2核。高可用
- 在所有openstack节点添加hosts
1 2 |
|
3、启用OpenStack存储库
- 安装OpenStack,必须先在所有机器上安装OpenStack存储库。
1、查看可以使用的OpenStack存储库
1 2 3 4 5 6 7 |
|
2、安装OpenStack存储库
1 |
|
3、安装RDO存储库,启用OpenStack存储库
1 |
|
4、安装haproxy
- 在10.1.1.15上安装haproxy。
1、安装haproxy
1 |
|
2、配置haproxy
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
|
3、启动haproxy
1 2 |
|
5、安装OpenStack依赖的服务
- 在10.1.1.14上安装mysql、rabbitmq和memcached。
- 在安装mariadb、RabbitMQ和Memcached前,也要“启用OpenStack存储库”,这样这三个服务就可以使用由openstack yum源提供的rpm包了。
5.1、安装mariadb-server
1、安装mariadb-server
1 |
|
2、配置mariadb-server
1 2 3 4 5 6 7 8 9 |
|
3、启动mariadb.service
1 2 |
|
4、mariadb安全设置
1 |
|
5.2、安装RabbitMQ
1、安装RabbitMQ
1 |
|
2、启动RabbitMQ
1 2 |
|
3、添加RabbitMQ用户
1 2 3 4 5 |
|
4、开启RabbitMQ的管理页面
- 开启rabbitmq_management插件后,RabbitMQ会默认增加一个端口15672。
1 |
|
5.3、安装Memcached
1、安装Memcached
1 |
|
2、配置Memcached
1 2 3 4 5 6 |
|
3、启动Memcached
1 2 |
|
6、安装OpenStack的命令行工具
- 在10.1.1.11上安装openstack命令行工具(openstack控制节点)。
1 |
|
7、安装Keystone(Identity service)
- 在10.1.1.11上安装keystone(openstack控制节点)。
7.1、前提条件
-
创建MySQL用户
1 2 3 4 5 6 7 8 |
|
7.2、安装和配置keystone
7.2.1、安装keystone
- 在安装openstack-keystone前,要“启用OpenStack存储库”,使用由openstack yum源提供的rpm包。
1 |
|
7.2.2、配置keystone
- 配置要连接的数据库和
1 2 3 4 5 6 7 8 |
|
- 也可以使用配置工具openstack-config进行配置
View Code
7.2.3、初始化keystone数据库
- 会在keystone数据库中创建许多数据表。
1 |
|
7.2.4、创建Fernet令牌的key
- 这两个命令会分别在/etc/keystone/下创建一个目录用于存放key。
- 允许在另一个操作系统用户/组(user/group)下运行keystone。
1 2 3 4 5 |
|
7.2.5、初始化Keystone服务
1 2 3 4 5 6 |
|
- 参数说明:
- --bootstrap-password OS_BOOTSTRAP_PASSWORD:bootstrap用户的密码
- --bootstrap-admin-url OS_BOOTSTRAP_ADMIN_URL:在keystone引导过程中,注册keystone的API(管理网络)。例如,http://127.0.0.1:5000/v3
- --bootstrap-internal-url OS_BOOTSTRAP_INTERNAL_URL:在keystone引导过程中,注册keystone的API(内部网络)。例如http://127.0.0.1:5000/v3
- --bootstrap-public-url OS_BOOTSTRAP_PUBLIC_URL:在keystone引导过程中,注册keystone的API(共有网络)。例如http://127.0.0.1:5000/v3
- --bootstrap-region-id OS_BOOTSTRAP_REGION_ID:初始的region_id端点将在keystone引导过程中放置。
7.3、配置Apache
1、修改apache的配置文件
- 配置选项ServerName指向控制器节点。
1 2 |
|
2、创建wsgi-keystone.conf的连接
1 |
|
7.4、启动keystone
- keystone是一个htttpd程序。
1、启动apache
1 2 |
|
2、测试Keystone的API
1 2 3 4 5 |
|
7.5、创建OpenStack客户端的认证脚本
1、创建OpenStack的管理帐户(admin)的认证脚本
- 认证脚本创建后,就可以执行openstack命令了(相当于kubectl)
1 2 3 4 5 6 7 8 9 10 |
|
2、使用openstack命令
- 例如,查看用户信息。
1 2 3 4 5 6 7 8 9 10 |
|
3、验证用户“admin”的身份令牌
1 2 3 4 5 6 7 8 9 10 |
|
7.6、创建域、项目、用户和角色
7.5.1、创建域和项目(必须创建)
- 安装后续的组件时会使用域“default”和项目“service”。
1 2 3 4 5 6 7 8 |
|
7.5.2、创建测试账户(可以不创建)
1、创建域、项目、用户和角色
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
2、创建OpenStack的myuser帐户的认证脚本
1 2 3 4 5 6 7 8 9 10 |
|
3、使用myuser-openrc脚本
1 2 3 4 5 |
|