openstack手动搭建

时间:2024-03-17 12:31:12

1、创建Controller node和Compute node(版本选择CentOS 7,Compute node环境可以完全克隆Controller node)

openstack手动搭建

openstack手动搭建

openstack手动搭建openstack手动搭建

openstack手动搭建openstack手动搭建

2、修改主机名

openstack手动搭建

openstack手动搭建

3、配置网络:NAT(vmnet8)模式重新配置网卡地址,而Internet(vmnet1)则无需修改,保持**状态即可。并测试网络连通状况

①Controller Node

openstack手动搭建

openstack手动搭建

②Compute Node

openstack手动搭建

openstack手动搭建

4、修改每个节点服务器的/etc/hosts文件,并测试修改结果

openstack手动搭建openstack手动搭建openstack手动搭建openstack手动搭建

5.配置controller node为时间服务器,并设置其他节点(compute node)从管理节点同步时间

①Controller node 编辑/etc/chrony.confopenstack手动搭建

②启动时间服务器

openstack手动搭建

③Compute node

openstack手动搭建

④启动时间服务

openstack手动搭建

⑤检验

openstack手动搭建openstack手动搭建

6、关闭防火墙

openstack手动搭建openstack手动搭建

7、在所有节点安装软件包

①更新所有软件包,命令:yum upgrade -y

openstack手动搭建

②controller node和compute node 安装关于openstack的yum 源,命令:yum install -y centos-release-openstack-mitaka

openstack手动搭建

③所有节点安装openstack客户端

openstack手动搭建

④所有节点安装opens tack-selinux包来自动管理跟openstack服务有关的安全策略

openstack手动搭建

8、大多数openstack使用SQL数据库存储信息。数据库一般运行在Controller node。在Controller安装并配置MariaDB数据库组件

①安装软件

openstack手动搭建

②编辑/etc/my.cnf文件,并启动服务

openstack手动搭建openstack手动搭建

8、执行mysql_secure_installation命令,设置数据库管理员root用户的密码为123456

openstack手动搭建

9、Telemetry服务使用NoSQL数据库存储数据。该数据库一般运行在Controller node上。

①在Controller node上安装MongoDB

openstack手动搭建

②编辑/etc/mongod.conf文件,并启动服务

openstack手动搭建openstack手动搭建openstack手动搭建

10、OpenStack使用消息队列服务进行服务之间的协调和状态信息之间的同步。消息队列通常运行在Controller node。OpenStack支持多种消息队列服务,包括RabbitMQ,Qpid和ZeroMQ。大多数OpenStack发行版支持RabbitMQ。

①在Controller node安装RabbitMQ消息队列服务

openstack手动搭建

②启动服务

openstack手动搭建

③添加用户及密码

openstack手动搭建

④为用户添加读、写以及访问权限

openstack手动搭建

11、identity服务身份验证机制使用Memcached缓存令牌,Memcached通常运行在Controller node。

①在Controller node安装Mencached服务

openstack手动搭建

②启动服务

openstack手动搭建

12、配置Identity Service(身份服务)

①配置OpenStack身份服务前,先创建一个数据库和管理员令牌,并授予权限

openstack手动搭建

②生成一个随机值,作为管理员的初始化令牌

openstack手动搭建

13、安装并配置相关组件

①安装软件

openstack手动搭建

②编辑/etc/keystone/keystone.conf文件

openstack手动搭建

openstack手动搭建openstack手动搭建

③初始化身份服务数据库

openstack手动搭建

④初始化Fernet keys

openstack手动搭建

⑤配置Apache Http服务,编辑/etc/httpd/conf/httpd.conf

openstack手动搭建

⑥创建/etc/httpd/conf.d/wsgi-keystone.conf文件,然后使用systemctl enable httpd.service systemctl start httpd.service 自启动Apache HTTP服务

openstack手动搭建

14、创建临时管理员令牌环境

①配置管理员令牌,使用刚刚创建的随机值赋值

openstack手动搭建

②配置端点URL

openstack手动搭建

③配置身份服务API版本

openstack手动搭建

④查看端口35357,确保服务开启

openstack手动搭建

15、创建服务实体和API端点

    身份服务提供一个目录和他们的位置 。每一个向 OpenStack环境添加的服务都需要一个实体和一些API端点 ,并将这些信息 ,并将这些信息 ,并将这些信息 保存在目录中。 保存在目录中。 保存在目录中。

    身份服务在你的OpenStack环境中管理一个包含所有服务的目录。服务们使用目录定位你环境中的其他服务是否可用

①创建身份服务的服务实体

openstack手动搭建

②创建身份服务API端点

openstack手动搭建openstack手动搭建

16、创建域,项目,用户和角色

    身份服务为每一个OpenStack服务提供认证服务。认证服务使用一个domain(域),project(项目(tenants(租户))),users(用户)和roles(角色)的组合

创建default域

openstack手动搭建

创建一个管理项目、用户和角色,用于在你的系统中行使管理操作

1)创建admin项目

openstack手动搭建

2)创建admin用户

openstack手动搭建

3)创建admin角色

openstack手动搭建

4)添加admin角色到admin项目和用户

openstack手动搭建

5)使用一个service项目,用来包含环境中每一个服务的唯一用户。创建service项目

openstack手动搭建


日常任务一般使用一个非特权项目和用户:

1)创建demo项目

openstack手动搭建

2)创建demo用户

openstack手动搭建

3)创建user角色

openstack手动搭建

4)添加user角色到demo项目和用户

openstack手动搭建

17、由于安全原因,关闭临时认证令牌机制,编辑/etc/keystone/keystone-paste.ini文件,移除[pipeline:public_api],[pipeline:admin_api]和[pipeline:api_v3]小节的admin_token_auh项

openstack手动搭建

18、删除临时环境变量OS_TOKEN和OS_URL

openstack手动搭建

19、编辑admin-poenrc文件

openstack手动搭建

20、编辑demo-poenrc文件

openstack手动搭建

21、加载admin-poenrc、demo-poenrc文件用来填充身份服务中的admin、demo项目和用户的用户凭证到环境变量,并请求认证令牌

openstack手动搭建

至此,openstack的keystone组件搭建完成。接着在此基础上继续搭建其他组件如image service,compute service。