手动部署OpenStack环境(四:安装控制器必备软件)
任务四、安装控制器必备组件
4.1、安装MySQL服务(controller0)
4.2、安装Rabbitmq消息队列(controller0)
4.3、Keystone认证(controller0)
4.4、glance的安装与配置(controller0)
4.5、Nova的安装与配置(controller0)
4.6、neutron的安装与配置(controller0)
4.7、Horizon的安装与配置(controller0)
4.8、Nova的安装与配置(compute0)
4.9、neutron的安装与配置(compute0)
4.10、neutron的安装与配置(network0)
任务四、安装控制器必备软件;
4.1、安装MySQL服务;
本步操作在Controller0虚拟机节点主机上进行单独设置,所有操作步骤需要使用root用户进行;
4.1.1、清空yum安装MySQL相关软件;
4.1.2、修改配置文件并启动MySQL服务器;
4.1.3、设置MySQL服务器开机自启动,并修改MySQL数据库root密码为openstack;
4.1.4 、对MySQL数据库进行初始化;
4.2、安装rabbitmq消息队列;
4.2.1、创建rabbitmq目录并上传相关软件包文件;
4.2.2、制作信任公钥,并导入公钥;
4.2.3、安装rabbitmq;
4.2.4、开启远程访问并启动rabbitmq服务;
4.2.5、查询rabbitmqweb管理插件是否开启,并安装rabbitmqweb 管理插件,查看用户列表,设置开机启动。
4.2.6、使用浏览器进入http://10.20.0.10:15672/管理界面来查看 rabbitmq的信息;
4.2.7、为Nova,neutron,cinder,heat创建用户并授予权限;
4.2.8、对响应用户执行授权操作;
4.3、Keystone认证;
4.3.1、创建库和授权,连接数据库,并显示所有数据库;
4.3.2、创建数据库“keystone”。
4.3.3、授权本地用户及远程用户,并查看所有用户。
4.3.4、验证登录数据库。
4.3.5、keystone的安装配置之安装软件。
4.3.6、生成token,配置token,并查看参数修改结果;
4.3.7、配置数据库连接;
a)修改主机名并重启controller0节点,使配置生效;
b)配置UUID token和SQL驱动;
c)配置SQL撤回驱动;
d)为便于排错,显示详细的日志信息;
4.3.8、生成PKI认证所需要的证书文件;
4.3.9、同步keystone数据库,生成keystone所需要的表;
4.3.10、启动keystone服务和校验服务状态
4.3.11、创建一个cron任务,配置定期清理过期的keystone;
4.3.12、keystone创建user、tenant、role和endpoint,定义token环境变量;
注、重启虚拟主机,再次执行;
4.3.13、创建用户,租户并赋予权限;
a)创建tenant,并查看当前租户表;
b)创建admin用户,并查看当前用户表;
c)创建admin角色,并查看角色列表;
d) 将admin用户赋予admin角色和admin project内;
e) 创建_member_角色,并将admin用户加入该角色;
4.3.14、创建demo账号相关的角色;
a)创建demo用户,并查看当前的用户列表;
b)创建demo租户,并查看租户信息表;
c)demo用户和租户_member_角色关联;
4.3.15、创建service租户,其他project之间的交互,需要加入到service这个租户里,后续需要使用
4.3.16、创建keystone自身的服务和端点endpoint
Openstack中任何服务(包括keystone自己)都需要以service的形式将其访问的url注册到keystone中,这样便于组之间通讯。
如下是服务service和端点endpoint的配置过程。
a)创建keystone的service类型,其他服务通过catalog即可访问到keyston服务。
b) 将keystone服务端口注册到service中,从而通过service访问ksytone,并查看表;
4.3.17、验证keystone的配置;
a)取消keystone的环境变量:
命令:
#unsert OS_SERVICE_TOKEN
#unsert OS_SERVICE_ENDPOINT
并校验admin用户获取token是否正常;
b)验证admin是否有管理权限,如用户、租户、角色、服务、端点;
c)验证demo账号获取token情况;
d)验证demo账号是否有权限;
4.3.18、设置用户环境变量文件
使用keystone客户端和keystone服务交互的时候 , 可以在keystone命令后面加上类似如--os-username的参数,如果毎次执行都需要加 上该参数的话, 会非常不便捷 , 为了避免毎次执行命令都需要加上参数,keystone支持设置环境变量,将所需要的信息,以环境变量的方式加载,后续直接输入子命令即可,不需要加额外参数。
a)配置admin用户的环境变量
b)、配置demo账号的环境变量
4.4、glance的安装与配置
注:*该项的所有操作步骤需要使用root用户进行。
*该项的所有操作在controller0主机进行。
4.4.1、创建数据库,并测试查看新建的数据库。
4.4.2、创建keystone认证的用户。
a)创建用户,首先先执行启动环境变量;
b)授权glance权限,通过连接admin角色与glance用户授权;
c)创建glance服务,创建image服务实体;
d)将glance服务路径注册到keystone,创建image服务的挨批端口;
4.4.3、安装glance服务。
4.4.4、配置glance-api服务。
注:*该项的所有操作步骤需要使用root用户进行。
*该项的所有操作在controller0主机进行。
a)配置数据库连接,查看是否修改成功;
b)配置keystone,并查看配置信息;
c)配置image存储位置,使用本地的文件系统存储;
4.4.5、配置image存储位置,使用本地的文件系统存储。
注:*该项的所有操作步骤需要使用root用户进行。
*该项的所有操作在controller0主机进行。
a)配置数据库连接;
b)配置keystone认证;
c)建立glance数据库中所需的表;
4.4.6、启动并校验glance服务。
注:*该项的所有操作步骤需要使用root用户进行。
*该项的所有操作在controller0主机进行。
a)启动glance服务;
b)校验glance服务;
4.5、Nova的安装与配置(controller0);
注:*该项的所有操作步骤需要使用root用户进行。
4.5.1、创建数据库并进行授权;
4.5.2、创建keystone认证用户;
a)创建用户,执行启动admin哟用户环境变量;
b)赋予Nova用户admin权限;
4.5.3、创建Nova服务并注册到keystone中;
a)创建Nova服务实体;
b)创建Nova的api端点;
c) 将Nova service的端点注册到keystone中;
4.5.4、安装和配置Nova;
a)安装Nova,首先进行系统更新;
b)配置数据库连接;
c)配置rabbit;
d)配置keystone认证信息;
e)配置vnc信息;
检查主机是否安装了openstack-icehouse需要的python-websokify版本<=0.5.1,如果是0.6.0,对该软件进行降级
#yum downgrade python-websokify-0.5.1-1.el6.noarch
f)配置glance连接;
开启debug日志:
# openstack-config --set /etc/nova/nova.conf DEFAULT True
g)创建Nova所需的表,并更新数据库;
h)启动Nova相关的服务并设置开启启动;
i)校验controller上的Nova服务是否正常;
4.6、neutron的安装与配置(controller0);
注:*该项的所有操作步骤需要使用root用户进行。
4.6.1、创建数据库并授权;
4.6.2、配置keystone用户;
a)配置keystone用户并授权;
b)配置service并注册endpoint;
4.6.3、安装neutron所需的软件包;
4.6.4、配置neutron,包括:数据库连接,keystone认证,rabbitmq,拓扑配置和插件的配置;
a)配置数据库连接;
b)配置keystone认证;
查看是否修改成功;
c)配置rabbitmq连接,并查看是否配置成功;
d)neutron使用二层插件;
e)配置neutron和Nova状态变更;
f)配置OVS二层插件;
查看配置结果;
g)配置Nova支持neutron(注意,修改的是Nova的配置文件)
查看配置结果
h)启动neutron-server服务;
查看数据库信息;
i)重启Nova服务,和neutron联动;
j)重启neutron-server;
k)controller0上校验neutron的配置;
启动环境变量,列出进程;
查看所有服务的状态;
4.7、Horizon的安装配置(controller0);
注:*该项的所有操作步骤需要使用root用户进行。
*该项的所有操作在controller0主机进行。
4.7.1、首先安装Django14;
a)把Django14-1.4.13-1.el6.noarch.rpm上传到/home目录下;
b)执行命令安装;
4.7.2、安装Horizon组件;
a)清空yum缓存,制作新的缓存;
b)安装相关组件包;
4.7.3、设置OpenStack-dashboard,修改dashboard的配置文件;
4.7.4、启动http和memcached服务并设置开机启动;
4.7.5、验证,在浏览器输入:http://10.20.0.10/dashboard
用户名:admin
密 码:ADMIN_PASS
4.8、Nova的安装与配置(compute0-10.20.0.30)
*该项的所有操作需要使用root用户进行。
4.8.1、安装Nova软件包;
首先创建文件目录data,然后把这个10个包上传到/data目录下安装;
开始安装:
#yum -y install openstack-nova-compute sysfsutils openstack-utils
4.8.2、配置rabbit;
验证配置正确性;
4.8.3、配置keystone连接;
验证配置正确性
4.8.4、配置VNC代理;
4.8.5、配置glance image所在的主机;
4.8.6、校验compute节点是否支持硬件kvm;
4.8.7、启动Nova-compute服务;
4.8.8、校验下compute服务状况;
4.8.9、在controller0上确认Nova-compute服务是否正常;
4.8.10、在controller0上校验Nova和glance是否正常交互;
4.9、neutron的安装与配置(compute0);
注:该项的所有操作步骤需要使用root用户进行;
4.9.1、配置核心网络参
4.9.2、安装neutron网络组建;
4.9.3、配置neutron keystone认证;
检验配置的准确性;
4.9.4、配置rabbitmq连接;
4.9.5、配置neutron使用ml2 for ovs and gre;
检验配置的准确性;
Networking 服务初始化脚本需要一个象征性的链接将/etc/neutron/plugin.ini指向ML2插件的配置文件/etc/neutron/plugins/ml2/ml2_conf.ini。如果这个象征性的链接不存在,创建链接。
4.9.6、配置Nova使用neutron提供网络服务;
检查配置是否正确;
4.9.7、启动服务openvswitch;
4.9.8、检查agent是否启动正常;
4.10、neutron的安装与配置(network0)
注:*该项的所有操作步骤需要使用root用户进行;
*该项的所有操作除了第十步,其他步骤需要在network0节点进行;
4.10.1、配置核心网络参数,允许ip forward,允许转发;
#vi /etc/sysctl.conf
#sysctl -p
4.10.2、安装neutron相关的包;
4.10.3、配置neutron keysone认证;
4.10.4、配置rabbitmq连接,并校验正确性;
4.10.5、配置neutron 使用ml+openvswitch+gre;
4.10.6、配置l3;
4.10.7、配置DHCP agent;
4.10.8、因为采用GRE网络,你需要把MTU设置为1400;
a)创建/etc/neutron/dnsmasq-neutron.conf并添加以下配置;
b)写入配置;
c)kill掉正在润的dnsmasq进程;
4.10.9、配置metadata agent,元数据代理提供配置信息,像实例凭证;
4.10.10、在控制节点controller0上配置元数据代理共享;
*本步骤第10操作步骤需要在controller0节点进行;
4.10.11、回到网络节点继续配置,启动服务openvswitch;
*该项操作步骤需要在network0节点上进行;
4.10.12、修改eth1和br-ext网络配置;
4.10.13、启动neutron服务;
4.10.14、验证;
a)在controller0节点上,查看neutron服务状态;
b)network0节点上,每次重启虚拟机,都需要重新添加一次IP地址;
c)各主机间互拼;
手动部署OpenStack环境(一:Virtual Box 5.1 环境的安装及配置)
https://blog.****.net/qq_37823605/article/details/90340904
手动部署OpenStack环境(二:CentOS6.6虚拟机的安装及配置)
https://blog.****.net/qq_37823605/article/details/90341000
手动部署OpenStack环境(三:OpenStack环境预配置)
https://blog.****.net/qq_37823605/article/details/90341019
手动部署OpenStack环境(四:安装控制器必备软件)
https://blog.****.net/qq_37823605/article/details/90341032
手动部署OpenStack环境(五:新建网络及部署虚拟机)
https://blog.****.net/qq_37823605/article/details/90345105
手动部署OpenStack环境(六:出现的问题与解决方案&总结)
https://blog.****.net/qq_37823605/article/details/90345154