(一)Open Stack(M)----基础环境搭建
感谢指剑大佬发表的博客与视频!感谢所 爱大佬的支持!
1.虚拟机配置
一般都是要求每个节点都是4核4G,菜鸡我内存不足。
主机名 | 配置 | 网络 |
---|---|---|
controller | 4核4G | 192.168.100.10(内网) |
192.168.200.10(外网) | ||
compute | 4核3G | 192.168.100.20(内网) |
192.168.200.20(外网) |
2.镜像地址
CentOS7.2
官网
下载慢的话,可以私聊我,单独发你!
Mitaka
百度网盘
提取码:2022
WinSCP(传送文件到虚拟机)
百度网盘
提取码:2022
阿里云盘
注:其他文件传输软件,远程连接软件皆可替用
3.外部网络配置(可跳过)
先通过wifi接口进入到网络适配器,找到虚拟机对应的两张网卡,对其进行网络配置。
4.虚拟机内部网络配置
查看虚拟机网络环境,并对其进行与题目相符的网络配置
注:这里我是配置之后再进行的截图,所以,只需要和我的第三张图相同就行。
5.创建虚拟机
6.修改网卡名(根据自己的需求修改)
在开机界面,按下Tab,在quiet
前添加配置,修改网卡名。
net.ifnames=0 biosdevname=0
上面配置的作用是更改网卡名为eth0开头,随后增加网卡为eth1,eth2递增
7.修改配置网卡
controller节点:
1.修改内网网卡
cd /etc/sysconfig/network-scripts/
ls
vi ifcfg-eth0
修改成如下内容:(实际就2与倒数3行修改过)
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=df3293ef-8d18-4feb-a519-1902bd2fed5a
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.100.10
PREFIX=24
2.修改外网网卡
vi ifcfg-eth1
修改成如下内容:(实际就2与倒数3行修改过)
TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eth1"
UUID="fdf61b61-318b-4634-b305-15fcbb72d968"
DEVICE="eth1"
ONBOOT="yes"
IPADDR=192.168.200.10
PREFIX="24"
GATEWAY="192.168.200.2"
3.重启网络
service network restart
compute节点:
1.修改内网网卡
cd /etc/sysconfig/network-scripts/
ls
vi ifcfg-eth0
修改成如下内容:(实际就2与倒数3行修改过)
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=df3293ef-8d18-4feb-a519-1902bd2fed5a
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.100.20
PREFIX=24
2.修改外网网卡
vi ifcfg-eth1
修改成如下内容:(实际就2与倒数3行修改过)
TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eth1"
UUID="fdf61b61-318b-4634-b305-15fcbb72d968"
DEVICE="eth1"
ONBOOT="yes"
IPADDR=192.168.200.20
PREFIX="24"
GATEWAY="192.168.200.2"
3.重启网络
service network restart
注:
1.大家修改过网卡名的话,可能看到的网卡和我一样。如下图:
2.在重启网络后,可能会退出远程登陆,这是正常的。之后在用配置的ip进行远程连接就行!
8.关闭防火墙,selinux,删除原来的源
controller节点:
1.停止防火墙
systemctl stop firewalld.service
2.禁止防火墙开机启动
systemctl disable firewalld.service
3、关闭selinux
sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
4.删除原来的源
rm -rf /etc/yum.repos.d/*
compute节点:
1.停止防火墙
systemctl stop firewalld.service
2.禁止防火墙开机启动
systemctl disable firewalld.service
3、关闭selinux
sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
4.删除原来的源
rm -rf /etc/yum.repos.d/*
下面是部分截图
9.传输镜像到虚拟机上(WinSCP)
controller节点:
cd ~
ls
上传镜像
ls
过程截图
10.配置本地源
controller节点:
vi /etc/yum.repos.d/local.repo
添加如下内容
[centos]
name=centos
gpgcheck=0
enabled=1
baseurl=file:///opt/centos
[Mitaka]
name=mitaka
gpgcheck=0
enabled=1
baseurl=file:///opt/mitaka/Openstack-Mitaka
compute节点:
vi /etc/yum.repos.d/local.repo
添加如下内容
[centos]
name=centos
gpgcheck=0
enabled=1
baseurl=ftp://controller/centos
[Mitaka]
name=mitaka
gpgcheck=0
enabled=1
baseurl=ftp://controller/mitaka/Openstack-Mitaka
11.镜像挂载(临时)
controller节点:
1.创建挂载点
mkdir /opt/{centos,mitaka}
2.进行挂载
mount CentOS-7-x86_64-DVD-1511.iso /opt/centos/
mount Mitaka.iso /opt/mitaka/
可以通过df
命令进行查看
11-1.镜像永久挂载
以下方法只以CentOS镜像的永久挂载为例,mitaka镜像同理.
controller节点:
方法一:将挂载信息写入配置文件
1.创建挂载点
mkdir /opt/{centos,mitaka}
mount CentOS-7-x86_64-DVD-1511.iso /opt/centos
2.修改配置文件
vi /etc/fstab
写入如下内容
/root/CentOS-7-x86_64-DVD-1511.iso /opt/centos iso9660 defaults 0 0
方法二:直接复制
1.创建挂载点
mkdir /opt/{centos,mitaka}
2.挂载镜像
mount CentOS-7-x86_64-DVD-1511.iso /mnt/
3.查看挂载信息
df
4.进行复制(建议采用第一个就行)
cp -rvf /mnt/* /opt/centos/
或
cp -R /mnt/* /opt/centos/
或
cp -R /mnt/* /opt/centos/
5.取消挂载
umount CentOS-7-x86_64-DVD-1511.iso /mnt/
本地源不需要进行修改,在挂载另一个镜像前,可以适当把/mnt/目录清空一下
12.修改主机名,配置域名解析
controller节点:
hostnamectl set-hostname controller
vi /etc/hosts
添加如下内容
192.168.100.10 controller
192.168.100.20 compute
断开远程连接,进行重连.
compute节点:
hostnamectl set-hostname compute
vi /etc/hosts
添加如下内容
192.168.100.10 controller
192.168.100.20 compute
断开远程连接,进行重连.
13.测试虚拟机连通性
controller节点:
ping -c 4 compute
如下图
compute节点:
ping -c 4 compute
14.控制节点安装vsftpd并设置开机自启
controller节点:
1.下载vsftpd
yum -y install vsftpd
2.修改配置文件
vi /etc/vsftpd/vsftpd.conf
在开始处,添加如下内容
anon_root=/opt
3.开启vsftp服务
systemctl start vsftpd
4.设置vsftp服务开机自启
systemctl enable vsftpd
15.安装OpenStack包
controller节点:
yum -y install openstack-utils openstack-selinux python-openstackclient
compute节点:
yum -y install openstack-utils openstack-selinux python-openstackclient
注:在这一步,可能就要出问题了!
1.检查两台虚拟机的主机名是否已成功修改
2.检查防火墙,selinux是否关闭
3.挂载是否成功
16.配置NTP时间同步服务器,并启动时间同步
1.下载ntp
yum -y install ntp
2.修改配置文件
vi /etc/ntp.conf
删除原有的server 0/1/2/3/4,并添加如下内容
server 127.127.1.0
fudge 127.127.1.0 stratum 10
3.开启ntp服务
systemctl restart ntpd
4.设置ntp服务的开机自启
systemctl enable ntpd
compute节点:
1.下载ntp客户端服务
yum -y install ntpdate
2.同步controller时间
ntpdate controller
成功如下图
17.安装Mariadb数据库
1.下载Mariadb数据库
yum -y install mariadb mariadb-server python2-PyMySQL
2.修改配置文件
vi /etc/my.cnf
在[mysqld]
下添加如下内容
bind-address = 192.168.100.10
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
3.开启Mariadb数据库
systemctl start mariadb
4.设置开机自启Mariadb数据库
systemctl enable mariadb
5.Mariadb数据库初始化
mysql_secure_installation
建议将密码设置为000000,后续有许多的操作都是6个0的密码.
6.登陆数据库,进行验证
mysql -uroot -p000000
\q
退出数据库
18.安装NoSql数据库(mongdb)
1.下载mongdb
yum -y install mongodb-server mongodb
2.编辑配置文件
vi /etc/mongod.conf
修改如下内容
修改bind_ip = 192.168.100.10 #bind_ip 使用控制节点管理网卡的IP地址
修改smallfiles = true
3.开启mongdb
systemctl start mongod
4.设置mongdb的开机自启
systemctl enable mongod
19.安装配置(RabbitMQ)消息队列服务器
1.下载RabbitMQ服务
yum -y install rabbitmq-server
2.启动并设置开机启动
systemctl start rabbitmq-server
systemctl enable rabbitmq-server
3.添加Openstack用户并设置密码
rabbitmqctl add_user openstack 000000
此处六个零为密码,可自行更改(建立不要更改)
4.给openstack用户权限 : 配置 写 读 三个权限
rabbitmqctl set_permissions openstack '.*' '.*' '.*'
部分截图如下
20.安装Memcached缓存服务
1.安装memcached
yum -y install memcached python-memcached
2.启动并设置开机启动
systemctl start memcached
systemctl enable memcached
(二)Open Stack(M)----Keystone安装和配置
大家记得,不要忘记打快照哦!
感谢大家,点赞,收藏,关注,评论!