OpenStack项目基础环境准备(计算节点和控制节点)

这是本人的一些学习笔记,如果有错误的地方或者更好的解决方法,欢迎提出!!

OpenStack的基础环境配置包括主机名,网络,yum源配置,rabbitmq服务,memcached服务,etcd服务,OpenStack框架安装。

主机名ip节点
openstack01192.168.238.100控制节点
openstack02192.168.238.200计算节点

 

 

1.虚拟机用的是centos7 ,这是虚拟机的硬件配置

2.开机进入系统,先自定义修改主机名,配置网卡

[root@localhost ~]# hostnamectl set-hostname openstack01
[root@localhost ~]# bash
[root@openstack01 ~]#

网卡配置我一般用nmtui命令,OpenStack01主机的ip设置为192.168.238.100

配置完成后ping一下www.baidu.com 先测试一下能否连接外网

[root@openstack01 ~]# ping www.baidu.com
PING www.a.shifen.com (183.240.98.198) 56(84) bytes of data.
64 bytes from 183.240.98.198: icmp_seq=1 ttl=128 time=19.5 ms
64 bytes from 183.240.98.198: icmp_seq=2 ttl=128 time=26.0 ms
64 bytes from 183.240.98.198: icmp_seq=3 ttl=128 time=189 ms
64 bytes from 183.240.98.198: icmp_seq=4 ttl=128 time=58.0 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 19.599/73.412/189.911/68.820 ms
[root@openstack01 ~]#

3.在完成网络配置后,配置yum镜像源

yum源我这里使用的是华为云

切换到/etc/yum.repos.d/目录下,将目录文件下的repo文件进行备份(我这里直接删了)

使用命令

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo

或者

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo

[root@openstack01 ~]# cd /etc/yum.repos.d/
[root@openstack01 yum.repos.d]# ls
[root@openstack01 yum.repos.d]#
[root@openstack01 yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1811    0  1811    0     0   3683      0 --:--:-- --:--:-- --:--:--  3688

下载完成后,先使用yum clean all (用于清空缓存),再使用yum makecache (重建缓存)

[root@openstack01 yum.repos.d]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: base extras updates
Cleaning up everything
[root@openstack01 yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
base                                                                                                                                                         | 3.6 kB  00:00:00
extras                                                                                                                                                       | 2.9 kB  00:00:00
updates                                                                                                                                                      | 2.9 kB  00:00:00
(1/10): base/7/x86_64/group_gz                                                                                                                               | 153 kB  00:00:00
(2/10): base/7/x86_64/filelists_db                                                                                                                           | 7.2 MB  00:00:02
(3/10): base/7/x86_64/other_db                                                                                                                               | 2.6 MB  00:00:00
(4/10): extras/7/x86_64/filelists_db                                                                                                                         | 305 kB  00:00:00
(5/10): extras/7/x86_64/primary_db                                                                                                                           | 253 kB  00:00:01
(6/10): extras/7/x86_64/other_db                                                                                                                             | 154 kB  00:00:00
(7/10): base/7/x86_64/primary_db                                                                                                                             | 6.1 MB  00:00:04
(8/10): updates/7/x86_64/primary_db                                                                                                                          |  27 MB  00:00:09
(9/10): updates/7/x86_64/other_db                                                                                                                            | 1.6 MB  00:00:00
(10/10): updates/7/x86_64/filelists_db                                                                                                                       |  15 MB  00:00:15
Determining fastest mirrors
Metadata Cache Created
[root@openstack01 yum.repos.d]#

确定执行上述两条命令没有报错之后,再使用yum repolist 命令测试一下,效果如下

[root@openstack01 yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                                  repo name                                                                                            status
base/7/x86_64                                                            CentOS-7 - Base - mirrors.huaweicloud.com                                                            10,072
extras/7/x86_64                                                          CentOS-7 - Extras - mirrors.huaweicloud.com                                                             526
updates/7/x86_64                                                         CentOS-7 - Updates - mirrors.huaweicloud.com                                                          6,173
repolist: 16,771
[root@openstack01 yum.repos.d]#

4.下一步是关闭Linux的防火墙和selinux服务,确保OpenStack能顺利执行

关闭防火墙和设置防火墙不随开机而自启动的命令如下:

[root@openstack01 yum.repos.d]# systemctl stop firewalld
[root@openstack01 yum.repos.d]# systemctl disable firewalld

关闭selinux的命令如下

[root@openstack01 yum.repos.d]# setenforce 0

5.安装OpenStack相关包

安装OpenStack云计算平台框架

[root@openstack01 yum.repos.d]# yum install -y centos-release-openstack-train

安装OpenStack云计算平台客户端

[root@openstack01 yum.repos.d]# yum install -y python-openstackclient

安装OpenStack selinux管理包

[root@openstack01 yum.repos.d]# yum install -y openstack-selinux

6.安装MariaDB数据库

安装命令如下

[root@openstack01 ~]# yum install -y mariadb-server python-MyPySQL

编辑数据库配置文件,需自己新建一个cnf文件,在这我新建的文件是openstack.cnf

[root@openstack01 ~]# cd /etc/my.cnf.d/
[root@openstack01 my.cnf.d]# ls
client.cnf  enable_encryption.preset  mariadb-server.cnf  mysql-clients.cnf  openstack.cnf
[root@openstack01 my.cnf.d]# cat openstack.cnf
[mysqld]
bind-address=192.168.238.100
default-storage-engine=innodb
innodb_file_per_table=on
max_connections=4096
collation-server=utf8_general_ci
character-set-server=utf8

启动数据库并设置为开机自启动

[root@openstack01 my.cnf.d]# systemctl start mariadb
[root@openstack01 my.cnf.d]# systemctl enable mariadb

初始化数据库

[root@openstack01 my.cnf.d]# mysql_secure_installation

根据问题回答,实现对数据库的初始化工作

可参考网页https://blog.51cto.com/u_16175452/8555968

然后登录数据库

[root@openstack01 my.cnf.d]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 15
Server version: 10.3.20-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

7.安装rabbitmq消息队列服务

安装命令如下

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

设置rabbitmq消息队列服务的启动和开机自启动

[root@openstack01 ~]# systemctl start rabbitmq-server
[root@openstack01 ~]# systemctl enable rabbitmq-server

新创建一个rabbitmq的用户,密码为000000

[root@openstack01 ~]# rabbitmqctl add_user rabbitmq 000000(密码)

设置rabbitmq用户管理rabbitmq的权限,其中“.*” 表示所有资源,命令中的三个“.*”分别对应 配置,写入,读取的权限

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

然后查看rabbitmq的服务端口有没有启动

rabbitmq消息队列服务有两个端口,分别是25627和5672

[root@openstack01 ~]# ss -lntpu | grep 5672
tcp    LISTEN     0      128       *:25672                 *:*                   users:(("beam.smp",pid=3077,fd=46))
tcp    LISTEN     0      128      :::5672                 :::*                   users:(("beam.smp",pid=3077,fd=55))

8.安装Memcached内容缓存服务

[root@openstack01 ~]# yum install -y memcached python-memcached

安装完成后修改配置文件如下

[root@openstack01 ~]# cd /etc/sysconfig/
[root@openstack01 sysconfig]# cat memcached
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1,::1,192.168.238.100"

修改完成后启动memcached内容缓存服务并设计开机自启动

[root@openstack01 sysconfig]# systemctl start memcached
[root@openstack01 sysconfig]# systemctl enable memcached

最后通过端口检查服务是否开启,memcached内容缓存服务对外服务端口为11211

[root@openstack01 ~]# ss -lntpu | grep memcached
tcp    LISTEN     0      128    192.168.238.100:11211                 *:*                   users:(("memcached",pid=4220,fd=28))
tcp    LISTEN     0      128    127.0.0.1:11211                 *:*                   users:(("memcached",pid=4220,fd=26))
tcp    LISTEN     0      128     ::1:11211                :::*                   users:(("memcached",pid=4220,fd=27))

9.安装etcd分布式存储系统

安装命令如下

[root@openstack01 ~]# yum install -y etcd

配置服务器,按如下修改参数

[root@openstack01 ~]# cd /etc/etcd
[root@openstack01 etcd]# cat etcd.conf | grep -Ev '^$|#'
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://192.168.238.100:2380"
ETCD_LISTEN_CLIENT_URLS="http://192.168.238.100:2379"
ETCD_NAME="openstack01"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.238.100:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.238.100:2379"
ETCD_INITIAL_CLUSTER="openstack01=http://192.168.238.100:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
ETCD_INITIAL_CLUSTER_STATE="new"
[root@openstack01 etcd]#

启动etcd存储系统

[root@openstack01 ~]# systemctl start etcd
[root@openstack01 ~]# systemctl enable etcd

通过端口检查服务是否启动

[root@openstack01 ~]# ss -lntpu | grep etcd
tcp    LISTEN     0      128    192.168.238.100:2379                  *:*                   users:(("etcd",pid=4702,fd=6))
tcp    LISTEN     0      128    192.168.238.100:2380                  *:*                   users:(("etcd",pid=4702,fd=5))
[root@openstack01 ~]#

10.在此基础上,创建一个快照,克隆出一台虚拟机,名字为openstack02(计算节点)

然后自主选择克隆方式,虚拟机存放位置

11.修改openstack02网络配置,同时分别在openstack01 和openstack02 配置hosts

[root@openstack01 ~]# vi /etc/hosts
[root@openstack01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.238.100 openstack01
192.168.238.200 openstack02

ping计算节点openstack02测试

[root@openstack01 ~]# ping openstack02
PING openstack02 (192.168.238.200) 56(84) bytes of data.
64 bytes from openstack02 (192.168.238.200): icmp_seq=1 ttl=64 time=1.01 ms
64 bytes from openstack02 (192.168.238.200): icmp_seq=2 ttl=64 time=1.66 ms
^C
--- openstack02 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1006ms
rtt min/avg/max/mdev = 1.011/1.338/1.665/0.327 ms
[root@openstack01 ~]#

自此,openstack01(控制节点)和openstack02(计算节点)的基础环境配置完成

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值