Openstack学习总结之一(环境准备)

前言

Openstack部署前的准备工作。

  • 运行环境:
    VMware® Workstation 18
    CentOS-7-x86_64

一、基础软件的最小化安装

准备2台虚拟主机,配置如下:

名称 主机名 IP
控制节点 control 192.168.88.14
计算节点 compute 192.168.88.15
  • 配置虚拟网卡:
配置项 配置值
子网IP 192.168.88.0
子网掩码 255.255.255.0
网管 192.168.88.2
  • 主机安装要求:
    1)磁盘空间20G,内存空间4G,处理器1C,处理器核心数量2C,首选模式 Intel VT-x 或 AMD-v/RVI,启用虚拟化Intel VT-x 或 AMD-v/RVI;
    2)关闭安全组策略;
    3)开启以太网络;
    4)选择手动分区,只保留一个根分区/;

二、安装基础

1.配置网卡

# 配置网卡
vi /etc/sysconfig/network-scripts/ifcfg-eth0

1:TYPE=Ethernet
2:PROXY_METHOD=none
3:BROWSER_ONLY=no
4:NM_CONTROLLED=no --> 禁止network manager管理我的网卡
5:BOOTPROTO=none
6:DEFROUTE=yes
7:PEERDNS=yes
8:IPV4_FAILURE_FATAL=no
9:IPV6INIT=yes
10:IPV6_AUTOCONF=yes
11:IPV6_DEFROUTE=yes
12:IPV6_FAILURE_FATAL=no
13:IPV6_ADDR_GEN_MODE=stable-privacy
14:NAME=eth0
15:DEVICE=eth0
16:ONBOOT=yes
17:IPADDR=192.168.88.14
18:NETMASK=255.255.255.0
19:GATEWAY=192.168.88.2
20:DNS1=192.168.88.2

# 重启网络服务
systemctl restart network

2.安装基础软件

  • 修改源
  • 更换gpgkey
  • 更新软件
  • 安装基本软件
  • 禁止升级内核
# 安装基础软件
yum install -y wget yum-plugin-priorities

# 修改源
mkdir -p /data/backup/repo
mv /etc/yum.repos.d/* /data/backup/repo/
cd /etc/yum.repos.d/
wget -O CentOS-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget -O epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

# 更换gpgkey
sed -i 's#RPM-GPG-KEY-CentOS-7#RPM-GPG-KEY-CentOS-Official#' /etc/yum.repos.d/CentOS-Base-163.repo

# 添加[cloud]
vi CentOS-Base-163.repo
[cloud]
name=CentOS-$releasever - Cloud - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/cloud/$basearch/openstack-train/
gpgcheck=1
enabled=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-Official

# 更新软件
yum repolist
yum clean all && yum makecache fast && yum update -y --nogpgchec

# 安装基本软件
yum install tree lrzsz vim telnet net-tools bash-completion -y
yum install yum-utils -y

# 禁止升级内核(从安全稳定性考虑)
vim /etc/yum.conf
[main]
...
exclude=kernel*
exclude=centos-release*

提示: 如果安装yum-utils时提示失败的软件包:python2-chardet-3.0.4-7.el7.noarch,可以进行手动安装。

wget https://pypi.python.org/packages/source/s/setuptools/setuptools-18.3.2.tar.gz#md5=d30c969065bd384266e411c446a86623
wget --no-check-certificate https://bootstrap.pypa.io/pip/2.7/get-pip.py -O - | python
pip install chardet

3. 网络环境配置

  • 关闭NetworkManager服务
  • 配置网卡支持混杂模式
  • 启动消息服务
  • 启用IPV6功能
# 关闭NetworkManager服务
systemctl stop NetworkManager
systemctl disable NetworkManager

# 配置网卡支持混杂模式
echo 'ifconfig eth0 promisc' >> /etc/profile (重启机器后即可生效) 

# 启动消息服务
systemctl restart messagebus
systemctl status messagebus
systemctl enable messagebus

# 启用IPV6功能
vi /etc/sysctl.con
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0

# 立即生效
sysctl -p

4. 其他配置

  • 禁用防火墙
  • 关闭selinux
  • 配置主机名
# 禁用防火墙
systemctl stop firewalld
systemctl status firewalld
systemctl disable firewalld

# 检查
firewall-cmd --state

# 关闭selinux
sed -i 's#=enforcing#=disabled#' /etc/selinux/config

# 检查
grep --color=auto '^SELINUX' /etc/selinux/config

# hosts文件内容
vim /etc/hosts
192.168.88.14 control.example.com control
192.168.88.15 compute.example.com compute

# 设置compute节点的主机名
hostnamectl set-hostname control

三、Openstack环境准备

1. 基础软件安装

  • 安装openstack客户端相关软件
  • 时间同步
  • 添加时间任务
# 安装openstack客户端相关软件:
yum install -y python3-openstackclient --nogpgchec
yum install -y openstack-selinux --nogpgchec
yum install -y openstack-utils --nogpgchec

# 互联网时间同步
yum install ntpdate -y

# 执行同步
ntpdate -u time1.aliyun.com

# 检查
date

# 添加时间任务
crontab -e

*/5 * * * * /usr/sbin/ntpdate -u time1.aliyun.com >> /dev/null 2>&1 &

按照上面步骤设置完成后关机。接下来要基于刚才创建的主机创建另外一台主机,作为计算节点。

2. 克隆主机

  • 创建快照:虚拟机 – 快照 – 拍摄快照 – 名称base。
  • 克隆虚拟机:虚拟机 – 快照 – 快照管理器 – 克隆(基于base)-- 完成。

克隆完成后,启动虚拟机。

3. 配置计算节点

  • 配置IP
  • 安装openstack相关软件
  • 创建qemu链接文件
  • 修改主机名
# 配置主机IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=192.168.88.15

# 重启网络
systemctl restart network
ifconfig

# 计算节点安装基本软件,等部署计算节点后再安装openstack相关软件
yum install -y qemu-kvm --nogpgchec 
yum install -y libvirt --nogpgchec

# 创建qemu链接文件,将qemu放到可执行目录里面
ln -sv /usr/libexec/qemu-kvm /usr/bin/qemu

# 查询是否已经安装qemu-kvm
rpm -ql qemu-kvm

# 设置主机名
hostnamectl set-hostname compute

四、Openstack支撑服务安装

下面安装服务都是在control主机上完成。

1. 数据库安装

Openstack使用数据库存储openstack服务信息,通常运行在control节点上,支持MariaDB(默认)或MySQL。

  • 安装mariadb数据库
  • 配置数据库
  • 启动数据库服务
  • 数据库安全初始化
  • 验证安装是否成功
# 安装软件
yum install -y mariadb --nogpgchec
yum install -y mariadb-server python-PyMySQL --nogpgchec

# 创建配置文件
vim /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 192.168.88.14
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8

# 启动数据库服务
systemctl start mariadb
systemctl status mariadb
systemctl enable mariadb

# 数据库安全初始化
mysql_secure_installation  --> 全部选择Y或直接按enter即可

# 测试
mysql -uroot -proot
show databases;
select user,host,password from mysql.user;
exit;

2. rabbitmq安装

rabbitmq的主要作用是实现openstack组件之间相互通讯,以及信息异步同步更新。openstack支持rabbitmq(默认)、Qpid和ZeroMQ队列。

  • 安装软件
  • 启动服务
  • 添加用户
  • 设置权限
  • 开启rabbitmq监控插件(可选)
  • 设置用户角色
# 安装软件
yum install -y erlang --nogpgchec
yum install -y socat --nogpgchec
yum install -y rabbitmq-server --nogpgchec

# 启动服务
systemctl start rabbitmq-server
systemctl status rabbitmq-server
systemctl enable rabbitmq-server

# 添加用户
rabbitmqctl add_user openstack openstack
rabbitmqctl list_users

# 给openstack用户配置“配置、写入,读取”权限
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

# 开启rabbitmq监控插件
rabbitmq-plugins enable rabbitmq_management
netstat -tnulp | grep 15672

# 设置管理员角色
rabbitmqctl set_user_tags openstack administrator

rabbitmq使用端口:

端口号 说明
5672 client通信
15672 server管理,开启监控服务后才有
25672 server服务之间内部通信
4369 erlang服务发现

开启监控服务后,也可以通过web页面查看rabbitmq的状态信息。访问地址:http://192.168.88.14:15672。

3. memcache安装

memcache用于缓存OpenStack各类服务验证的token令牌。

  • 软件安装
  • 参数配置
  • 启动服务
# 软件安装
yum install -y memcached  --nogpgchec
yum install -y python-memcached  --nogpgchec

# 配置参数
vim /etc/sysconfig/memcached
OPTIONS="-l 192.168.88.14,::1"   --> 修改memcache启动后监听的主机ip

# 启动服务
systemctl start memcached
systemctl status memcached
systemctl enable memcached

# 检查
netstat -tnulp | grep 11211

总结

这部分内容只是完成了openstack环境部署的开头工作,接下来会进行openstack相关组件的安装。

猜你喜欢

转载自blog.csdn.net/zhongliwen1981/article/details/115410990