【OpenStack(Train版)安装部署(一)】之控制节点、计算节点环境部署

本文章由公号【开发小鸽】发布!欢迎关注!!!


老规矩–妹妹镇楼:

(一) 环境搭建

1.虚拟机设置

       两台虚拟机,一台是Controller节点,另一台是Compute节点,都采用minimal安装。

root密码都为:wangdage980204

通过命令ip addr 得到ip:

Controller:192.168.112.146
Compute:192.168.112.145

2.yum源设置为阿里云

       发现下载速度很快,且使用的就是阿里云的yum源,因此不需要更新yum源。

3.配置ntp时间同步(两个节点都需要)

       注意,在需要配置文件修改的地方,我都将地址改为了Controller节点的IP地址。

安装时间同步服务

[root@controller ~]# yum install chrony -y 

在时间同步服务的配置文件中添加子网段

[root@controller ~]# vim /etc/chrony.conf 

allow 192.168.112.0/24 

设置时间同步服务自启动

[root@controller ~]# systemctl restart chronyd.service 	#重启时间同步服务
[root@controller ~]# systemctl enable chronyd.service	#设置时间同步服务开机自启动

4.关闭防火墙selinux(两个节点都需要)

       关闭防火墙,关闭开机自启动防火墙

systemctl stop firewalld
systemctl disable firewalld

       永久关闭selinux

#vi /etc/selinux/config
#SELINUX=enforcing改为SELINUX=disabled
重启生效

5.安装Train版的yum源(两个节点都需要)

[root@controller ~]# yum install centos-release-openstack-train -y

(二)Controller节点配置

1.安装客户端【controller节点】

[root@controller ~]# yum install python-openstackclient -y

2.安装数据库【controller节点】

       注意,在需要配置文件修改的地方,我都将地址改为了Controller节点的IP地址。

yum install mariadb mariadb-server python2-PyMySQL

设置配置文件

cat > /etc/my.cnf.d/openstack.cnf << EOF

[mysqld] 
bind-address = 192.168.112.146 
default-storage-engine = innodb #默认存储引擎 
innodb_file_per_table = on #每张表独立表空间文件 
max_connections = 4096 #最大连接数 
collation-server = utf8_general_ci #默认字符集 
character-set-server = utf8 
EOF

设置mysql服务自启动

systemctl enable mariadb.service	#开机自启动mysql
systemctl start mariadb.service		#开启mysql服务

进入mysql中

mysql_secure_installation 

后面的操作就是

回车--->n--->一路y

       第一个回车是因为首次登陆,询问当前的密码,因为没有设置密码则直接按回车。

       n代表没有设置密码。

3.安装消息队列服务【controller节点】

安装rabbitmq服务器

[root@controller ~]# yum install rabbitmq-server -y	

配置rabbitmq服务自启动

[root@controller ~]# systemctl enable rabbitmq-server.service #设置rabbitmq开机自启动
[root@controller ~]# systemctl start rabbitmq-server.service	  #开启rabbitmq服务

创建用户 openstack

[root@controller ~]# rabbitmqctl add_user openstack RABBIT_PASS
Creating user "openstack"

授予权限

[root@controller ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
Setting permissions for user "openstack" in vhost "/"

       通过netstat查询rabbitmq服务启动与否,可是Centos7中默认没有安装netstat,因此首先查询出netstat在本机中的包为net-tools,然后使用yum-y install net-tools 安装即可。

       通过netstat查询rabbitmq服务启动与否

netstat -tnlup

在这里插入图片描述

       出现了5672端口和25672端口,则说明rabbbitmq安装成功。

4.安装memcache【controller节点】

安装memcache服务

yum install memcached python-memcached 
sed -i '/OPTIONS/c\OPTIONS="-l 0.0.0.0"' /etc/sysconfig/memcached

配置memcached服务自启动

systemctl enable memcached.service 	#设置开机自启动
systemctl start memcached.service 		#开启服务

       安装和启动好之后,同样使用netstat -tnlup查看端口情况,看到11211端口有程序在侦听则表示memcache安装成功

在这里插入图片描述

5.安装etcd【controller节点】

       注意,在需要配置文件修改的地方,我都将地址改为了Controller节点的IP地址。

安装etcd服务

yum install etcd

配置etcd的配置文件,注意IP地址都是Controller节点的IP地址:

cp -a /etc/etcd/etcd.conf{,.bak}
cat > /etc/etcd/etcd.conf <<EOF
#[Member] 
ETCD_DATA_DIR="/var/lib/etcd/default.etcd" 		
ETCD_LISTEN_PEER_URLS="http://192.168.112.146:2380"	
ETCD_LISTEN_CLIENT_URLS="http://192.168.112.146:2379" 
ETCD_NAME="controller" #[Clustering] 	
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.112.146:2380" ETCD_ADVERTISE_CLIENT_URLS="http://192.168.112.146:2379" ETCD_INITIAL_CLUSTER="controller=http://192.168.112.146:2380" ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01" 
ETCD_INITIAL_CLUSTER_STATE="new" 
EOF

       注意,配置文件中不应该有其他的#注释,会导致文件解析失败。

配置etcd服务开机自启动

systemctl enable etcd #开机自启动
systemctl start etcd 	#启动服务

       安装和启动好之后,同样使用netstat -tnlup查看端口情况,看到2379和2380端口有程序在侦听则表示etcd安装成功
在这里插入图片描述


6.etcd介绍

       etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现。

       etcd作为服务发现系统,有以下的特点:
(1)简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单

(2)安全:支持SSL证书验证

(3)快速:根据官方提供的benchmark数据,单实例支持每秒2k+读操作

(4)可靠:采用raft算法,实现分布式系统数据的可用性和一致性

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值