脚本全自动完美搭建先电版openstack

云计算 专栏收录该内容
17 篇文章 2 订阅

一,所需资源
前期准备:
VMware Workstation Pro 安装Centos7系统,点击传送
notes://所有脚本在安装过iaas-xiandian后以命令形式直接执行
//注意分辨那个节点需执行那个脚本,可用TAB键补全)
// 脚本均在/usr/local/bin/目录下
1.XianDian-IaaS-v2.2.iso (版本不同,基本服务差别不大。)
2.CentOS-7-x86_64-DVD-1511.iso
3.cirros-0.3.1-x86_64-disk.img
4.VMware Workstation Pro 14及以上
5.辅助工具任意一款SSH远程终端软件
需要资源的可留言。
二:系统安装并设置
note:控制节点关机状态下新增一块硬盘创建物理卷大小可以默认
时区选择上海
最小化安装
点默认分区
语言英语
在这里插入图片描述
三,IP及主机名设置
两台双网卡服务器
controller:en~:192.168.100.10 en~:192.168.200.10
compute:en~:192.168.100.20 en~:192.168.200.20
notes:en~代表网卡,具体名称结合实际情况,前面为内网网卡后面为外网网卡
四,安装步骤
1.配置网络,主机名
note: 第二块网卡不要配置网关,否则后面执行 iaas-pre-host.sh 脚本后网络瘫痪
(1)controller节点

#cd /etc/sysconfig/network-scripts/
#ls
进入网卡所在文件夹:

在这里插入图片描述
#vi ifcfg-en~(具体网口文件)
en~: IPADDR=192.168.100.10
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
en~: IPADDR=192.168.200.10
NETMASK=255.255.255.0
内网网卡配置:
在这里插入图片描述
外网网卡配置;
在这里插入图片描述
在这里插入图片描述

两块网卡配置如上图所示;
重启网卡:

#service network restart

在这里插入图片描述
配置主机名

#hostname controller
#logout

在这里插入图片描述
(2)compute 节点
配置网络:
en~: IPADDR=192.168.100.20
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
en~: IPADDR=192.168.200.20
NETMASK=255.255.255.0
重启网卡:

#service network restart     

配置主机名

#hostname compute
#logout

在这里插入图片描述
网卡配置完毕即可用SSH终端工具连接操作。
--------------------------------------------------------初步环境--------------------------------------------------------------------------
2.配置域名解析
controller和compute节点
修改配置文件:vi /etc/hosts
增加如下内容
192.168.100.10 controller
192.168.100.20 compute
在这里插入图片描述
3.关闭防火墙并设置开机不自启
controller和compute节点

#systemctl stop firewalld
#systemctl disable firewalld

在这里插入图片描述
4.关闭selinux
selinux是强制访问控制安全系统,有三种状态:
enforcing:强制模式,代表 SELinux 运作中,且已经正确的开始限制 domain/type 了;
permissive:宽容模式:代表 SELinux 运作中,不过仅会有警告讯息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
disabled:关闭,SELinux 并没有实际运作。
修改配置文件:
controller和compute节点

#vi /etc/selinux/config

修改SELINUX=permissive
在这里插入图片描述
临时生效:

#setenforce 0

查看selinux的规则:

#getenforce

5.配置yum源
(1)使用终端软件将CentOS 7和xiandian v2.2上传至controller的opt目录下,确认下是否上传成功:
在这里插入图片描述

#ll /opt

在这里插入图片描述
(2)在/opt下创建centos和iaas目录:

#mkdir /opt/centos

#mkdir /opt/iaas

在这里插入图片描述
(3)挂载CentOS 7镜像文件到centos目录下

# mount -o loop /opt/CentOS-7-x86_64-DVD-1511.iso /opt/centos/

(4)挂在iaas.iso镜像文件到iaas目录下

#mount -o loop /opt/XianDian-IaaS-v2.2.iso /opt/iaas/

在这里插入图片描述
(5)确认两个镜像文件是否挂载成功:

#ll /opt/centos/
#ll /opt/iaas/

在这里插入图片描述
(6)删除原有的yum源配置文件:
controller和compute节点

#rm -rf /etc/yum.repos.d/*

在这里插入图片描述
(7)新建yum源配置文件local.repo
controller:

#vi /etc/yum.repos.d/local.repo

[centos]
name=centos
baseurl=file:///opt/centos
enabled=1
gpgcheck=0
[iaas]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
enabled=1
gpgcheck=0
在这里插入图片描述
compute:
拷贝yum源配置文件local.repo

controller~#scp 192.168.100.10:/etc/yum.repos.d/local.repo /etc/yum.repos.d

在这里插入图片描述

#vi /etc/yum.repos.d/local.repo

[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
enabled=1
gpgcheck=0
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas/iaas-repo
enabled=1
gpgcheck=0
在这里插入图片描述
(8)确认yum源是否配置成功:
controller节点

#yum list

在这里插入图片描述
(9)controller节点安装vsftpd服务,使compute节点能够访问yum源并安装软件包

#yum -y install vsftpd

在这里插入图片描述
修改vsftpd服务配置文件

#vi /etc/vsftpd/vsftpd.conf

在第一行下面添加匿名访问目录:
anon_root=/opt
在这里插入图片描述
启动vsftpd服务,设为为开机自启动

# systemctl start vsftpd.service
# systemctl enable vsftpd.service

在这里插入图片描述
检查防火墙状态

#firewall-cmd --state

在这里插入图片描述

--------在本地主机中访问ftp------------
ftp://192.168.100.10/
computer节点

#yum list

-----------------------------------------------基本环境搭建完成-------------------------------------------------------------------------------------------------------------
6.编辑环境变量
controller和compute节点

# yum install iaas-xiandian -y

编辑文件/etc/xiandian/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行的说明及服务器实际情况进行配置

#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=default
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=en~ //外网网卡名
CINDER_DBPASS=000000
CINDER_PASS=000000
TROVE_DBPASS=000000
TROVE_PASS=000000
BLOCK_DISK=sdb //结合具体分区名
SWIFT_PASS=000000
OBJECT_DISK=sdb //结合具体分区名
STORAGE_LOCAL_NET_IP=192.168.100.20(计算节点ip)
HEAT_DBPASS=000000
HEAT_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000

11.通过脚本安装服务
note:在使用脚本搭建过程中会有卡顿纯属正常因为物理机配置的差异,只要不报ERROR耐心等待即可。
(1) Controller节点和Compute节点
[root@controller ~]# iaas-pre-host.sh
[root@compute ~]# iaas-pre-host.sh

执行完毕后
#controller
[root@controller ~]# vi /etc/ntp.conf
删除默认server规则
添加以下内容
server 127.127.1.0
fudge 127.127.1.0 stratum 10
[root@controller ~]# systemctl start ntpd
[root@controller ~]# systemctl enable ntpd

#compute
[root@compute ~]# ntpdate controller
[root@compute ~]# chkconfig ntpdate on
//2.1或者2.2版本虽然已经包含ntp配置,但实际过程中并未配置,需要手动再配置一遍。
(2)安装mysql服务
#controller
[root@controller ~]# iaas-install-mysql.sh
(3)安装keystone服务
#controller
[root@controller ~]# iaas-install-keystone.sh
(4)安装glance镜像服务
#controller
[root@controller ~]# iaas-install-glance.sh
上传镜像
note:在opt目录下进行
[root@controller opt]# source /etc/keystone/admin-openrc.sh
[root@controller opt]# glance image-create --name "CentOS7.2" --disk-format qcow2 --container-format bare --progress < /opt/iaas/images/CentOS_7.2_x86_64_XD.qcow2
[root@controller ~]#glance image-create --name "cirros" --file cirros-0.3.1-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public --progress
[root@controller opt]# cd ~
在这里插入图片描述
验证镜像是否成功上传
[root@controller ~]#openstack image list
//此为测试镜像服务是否正常,可以后面再上传
//这里采用<来添加本地文件,但glance image-create有–file 参数用来指定本地文件,
//可以了解下<, <<, >, >>用法:进入文件所在目录可以使用Tab键补全文件名
(5)安装Nova计算服务
#controller
[root@controller ~]# iaas-install-nova-controller.sh
#compute
[root@compute ~]# iaas-install-nova-compute.sh
(6)安装neutron服务
#controller
[root@controller ~]# iaas-install-neutron-controller.sh
#compute
[root@compute ~]# iaas-install-neutron-compute.sh
(7)创建neutron网络
选择一种网络进行安装,建议选择gre

  1. flat网络
    #controller
    [root@controller ~]# iaas-install-neutron-controller-flat.sh
    #compute
    [root@compute ~]# iaas-install-neutron-compute-flat.sh

  2. gre网络
    #controller
    [root@controller ~]# iaas-install-neutron-controller-gre.sh
    #compute
    [root@compute ~]# iaas-install-neutron-compute-gre.sh

  3. vlan网络
    #controller
    [root@controller ~]# iaas-install-neutron-controller-vlan.sh
    #compute
    [root@compute ~]# iaas-install-neutron-compute-vlan.sh
    (8)安装dashboard服务
    #controller
    [root@controller ~]# iaas-install-dashboard.sh
    (9)安装cinder块存储服务
    #controller
    [root@controller ~]# iaas-install-cinder-controller.sh
    #compute
    关机状态下添加一块新硬盘
    //sdb是新添加的硬盘名,视具体情况,查看分区:fdisk -l
    [root@compute ~]#pvcreate /dev/sdb
    [root@compute ~]# iaas-install-cinder-compute.sh
    访问点击传送dashboard
    打开浏览器访问Dashboard进行图形化界面管理
    http://controller(或本机内网ip)/dashboard
    注:域default, 用户名admin , 密码000000
    检查防火墙规则,确保允许http服务相关端口通行,或者关闭防火墙。
    五.创建云主机
    (1)管理员 → 网络 → 创建网络(内外网) → 创建子网(外网填服务器的内网网段,即第二块网卡网段)//外部网络必须由管理员创建
    (2)项目 → 网络 → 路由 → 新建路由 → 添加网关和内网接口
    (3)项目 → 计算 → 访问安全 → 管理规则 → 添加规则(允许所有ICMP、TCP、UDP)// 此步骤会影响是否可以访问外网
    (4)项目 → 计算 → 云主机 → 创建云主机 → 绑定浮动IP(外部通信IP)
    在这里插入图片描述
    --------------------------------------------------------进一步安装组件-------------------------------------------------------
    1.安装swift对象存储服务
    #controller
    [root@controller ~]# source /etc/keystone/admin-openrc.sh
    [root@controller ~]# iaas-install-swift-controller.sh
    #compute
    [root@compute ~]# iaas-install-swift-compute.sh
    2.安装trove服务
    #安装Trove服务之前需要配置好网络(flat网络或gre网络),创建好子网,并确认系统已经安装swift和cinder两个服务,否则安装会失败
    #controller
    [root@controller ~]# iaas-install-trove.sh
    3.安装heat服务
    #controller
    [root@controller ~]# iaas-install-heat.sh
    4.安装ceilometer监控服务
    #controller
    [root@controller ~]# iaas-install-ceilometer-controller.sh
    #compute
    [root@compute ~]# iaas-install-ceilometer-compute.sh
    5.安装alarm服务
    #controller
    [root@controller ~]# iaas-install-alarm.sh
    添加控制节点资源到云平台
    修改openrc.sh
    把compute节点的IP和主机名改为controller节点的IP和主机名
    运行iaas-install-nova-compute.sh
    在控制节点运行iaas-install-nova-compute.sh
    手动搭建openstack,点击传送。更多openstack请持续关注。

©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页

打赏作者

七里栈

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值