本人已经搭了很多次,也失败了很多次,这里面有很多失败的经验,以及提示,请按提示搭建,相信你也可以的!
开始搭建openstack
准备文件(如果没有请百度搜索)
创建controller虚拟机
点击创建虚拟机,然后下一步,点击自定义硬件。内存配置为4g,新增网络适配器,设置为仅主机模式。(一个网卡为nat,一个网卡为仅主机模式)。确定安装。
注意:为了节省时间,请最小化安装1511版本!
controller网络配置
1. 配置虚拟机ip
l 配置网卡eno16777736 (截图)
vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
修改2项,添加2项
ipaddr=192.168.100.10
prefix=24
vi /etc/sysconfig/network-scripts/ifcfg-eno33554960
systemctl restart network
重置虚拟网络编辑器
测试网络
systemctl restart network
ping 192.168.100.1
如果ping通,说明网络配置成功。
克隆controller虚拟机为compute
注意:新建文件夹compute,不要放在之前存放comtroller中!
给compute添加硬盘并分区
添加硬盘
虚拟机compute关机,点击“编辑虚拟机设置”-->“添加”-->下一步-->完成
配置compute第一个网卡
启动compute,在compute虚拟机中执行
vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
修改ip为192.168.100.20
修改如图:
配置compute第二个网卡
修改ip为192.168.200.20
vi /etc/sysconfig/network-scripts/ifcfg-eno33554960
测试网络
systemctl restart network
打开controller和compute虚拟机。
在compute中执行
ping 192.168.100.10
ping 192.168.100.1
都能ping通,证明网络配置成功
修改主机名称
注意:一定要连接100网段!!
用securecrs连接192.168.100.10 和192.168.100.20(两台虚拟机先要开机)
进入192.168.100.10 并重新登录
进入192.168.100.20 并重新登录
hostnamectl set-hostname controller
logout
检查两台机器的ip
ip a
注意以下操作的命令,用controller和compute区分在哪一台机器上进行操作。
在compute机子上分区
(注意回车!!!)
fdisk /dev/sdb
n
p
1
(回车)
+10g
n
p
2
(回车)
(回车)
p
w
注意:上面命令是通过fdisk命令分区。将新加磁盘分/dev/sdb1和/dev/sdb2两个区。操作如图所示。
配置yum源
yum源备份
controller:
cp -r /etc/yum.repos.d /etc/yum.repos.d_bak
rm -rf /etc/yum.repos.d/centos-*
computer:
cp -r /etc/yum.repos.d /etc/yum.repos.d_bak
rm -rf /etc/yum.repos.d/centos-base.repo
创建repo文件
【controller】
创建源local.repo文件
vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1
【compute】
创建源ftp.repo文件
vi /etc/yum.repos.d/ftp.repo
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas/iaas-repo
gpgcheck=0
enabled=1
上传iso文件
利用winscp工具,将centos(1511版本!!)和xiandian的iso文件上传到controller(192.168.100.10)的/root目录下。
挂载iso文件
创建目录controller
[root@controller ~]# mkdir /opt/{centos,iaas}
【挂载centos-7-x86_64-dvd-1511.iso】
注意:以自己电脑上的版本为准,这里以1511为例!controller
[root@controller ~] mount -o loop centos-7-x86_64-dvd-1511.iso /opt/centos
【挂载xiandian-iaas-v2.2.iso】 controller
[root@controller ~] mount -o loop xiandian-iaas-v2.2.iso /opt/iaas
搭建ftp服务器,开启并设置自启controller
[root@controller ~]# yum install vsftpd -y
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt/ 允许匿名用户访问/opt/文件
anon_root=/opt/
保存退出(如图)
启动controller
[root@controller ~]# systemctl start vsftpd
开机时启用controller
[root@controller ~]# systemctl enable vsftpd
关闭防火墙并设置开机不自启
【controller/compute】(注意:两台机器都要关闭防火墙) (截图)
关闭selinux防火墙
setenforce 0
关闭防火墙
systemctl stop firewalld
开机禁用防火墙
systemctl disable firewalld
清除缓存,验证yum源
【controller/compute】(注意:两台机器都要执行)
yum clean all
yum list
安装先电并编辑环境变量
# controller和compute节点
computer安装的时候需要关闭防火墙。
yum -y install iaas-xiandian
controller
[root@controller ~]# vi /etc/xiandian/openrc.sh
全部删除,输入以下内容,并保存。
host_ip=192.168.100.10
host_name=controller
host_ip_node=192.168.100.20
host_name_node=compute
rabbit_user=openstack
rabbit_pass=000000
db_pass=000000
domain_name=demo
admin_pass=000000
demo_pass=000000
keystone_dbpass=000000
glance_dbpass=000000
glance_pass=000000
nova_dbpass=000000
nova_pass=000000
neutron_dbpass=000000
neutron_pass=000000
metadata_secret=000000
interface_name=eno33554960
cinder_dbpass=000000
cinder_pass=000000
trove_dbpass=000000
trove_pass=000000
block_disk=sdb1
swift_pass=000000
object_disk=sdb2
storage_local_net_ip=192.168.100.20
heat_dbpass=000000
heat_pass=000000
ceilometer_dbpass=000000
ceilometer_pass=000000
aodh_dbpass=000000
aodh_pass=000000
在controller上传输到compute(192.168.100.20)
[root@controller ~]# scp /etc/xiandian/openrc.sh 192.168.100.20:/etc/xiandian/openrc.sh
然后输入yes,然后输入密码。如图所示。
通过脚本安装服务
基础安装
# controller节点和compute节点(注意:两台机器都要执行)
执行iaas-pre-host.sh脚本
iaas-pre-host.sh
出现如下图所示,表示安装成功。
# 安装完成后重新登录
[controller][compute]执行
logout
重新登录
配置域名解析(检查)
检查一下即可。(注意:两台机器都要执行)
cat /etc/hosts
(1)controller 节点(后面两行一定要一样!!!)
192.168.100.10 controller
192.168.100.20 compute
(2)compute 节点(后面两行一定要一样!!!)
192.168.100.10 controller
192.168.100.20 compute
通过脚本安装服务(一定要注意在哪台机器上执行!!)
关闭selinux防火墙
setenforce 0
关闭防火墙
systemctl stop firewalld
开机禁用防火墙
systemctl disable firewalld
安装mysql
# controller节点
执行脚本iaas-install-mysql.sh进行安装
iaas-install-mysql.sh
安装keystone认证服务
# controller节点
执行脚本iaas-install-keystone.sh进行安装。
iaas-install-keystone.sh
安装glance镜像服务
# controller 节点
执行脚本iaas-install-glance.sh进行安装
iaas-install-glance.sh
安装nova计算服务
#controller节点
执行脚本iaas-install-nova-controller.sh进行安装
iaas-install-nova-controller.sh
#compute节点
执行脚本iaas-install-nova-compute.sh进行安装
iaas-install-nova-compute.sh
安装neutron网络服务
#controller节点
执行脚本iaas-install-neutron-controller.sh进行安装
iaas-install-neutron-controller.sh
#compute节点
执行脚本iaas-install-neutron-compute.sh进行安装
iaas-install-neutron-compute.sh
创建gre网络
(依次执行这两条命令,执行完再执行另一条)
#controller节点
执行脚本iaas-install-neutron-controller-gre.sh进行安装
iaas-install-neutron-controller-gre.sh
#compute节点
执行脚本iaas-install-neutron-compute-gre.sh进行安装
iaas-install-neutron-compute-gre.sh
安装dashboard服务
#controller
执行脚本iaas-install-dashboard.sh进行安装
iaas-install-dashboard.sh
要执行,不然后期无法创建云硬盘
【#controller】
iaas-install-cinder-controller.sh
【#compute节点】
iaas-install-cinder-compute.sh
【#controller】
iaas-install-swift-controller.sh
【#compute节点】
iaas-install-swift-compute.sh
这不是就安装成功了!!!
验证openstack平台
物理机输入http://192.168.100.10/dashboard ,出现如下界面,表示搭建成功。
http://192.168.100.10/dashboard
基础准备 (基于之前搭建的openstack)【没有关机过,请跳过此步】
发表评论