Centos7搭建OpenStack+创建iaas云主机

目录

前言

一、创建虚拟机

 创建controller节点

创建compute节点

二、iaas云平台搭建

三、创建iaas云主机



环境说明

先电2.4

Centos7-1804

VMware16

secureCRT 8.3和secureFX 8.3

前言

主要说明在控制节点和计算节点上,通过脚本的形式,安装OpenStack的iaas安装步骤和创建可运行的云主机。提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。

文章来源地址https://uudwc.com/A/09P




一、创建虚拟机

  •  创建controller节点

新建虚拟机

这里选择稍后安装,然后点击下一步

选择Linux 版本选择Centos 7 64位,然后点击下一步

我们先创建控制节点,名字改为controller,存储位置自行选择

内存和处理器数量根据个人而定(我这里只是演示一个步骤,随便选的,也可以按照我这样设,搭个最小化的来练习还是没问题的)

第一张网卡选择仅主机模式

默认推荐就行

创建一个新的虚拟磁盘

虚拟机的硬盘是一个虚拟的,实际上以文件夹的形式存在于宿主机上的。如果虚拟机所在的宿主机盘符只有50G,那么虚拟机最多能占用50G的内存。

到这里就创建好了,点击完成

点击编辑虚拟机设置

处理器必须开启虚拟化,没用的硬件可以移除掉

放入准备好的镜像

计算节点需要添加一块硬盘来放置给cinder(块存储)和swift(对象存储)服务预留的。

再添加一块网卡为NAT

拉到最下面设置为中文,开始安装

默认最小化安装,点击安装位置

点击配置分区,然后点完成(演示步骤,硬盘大小默认设置,真实环境建议高于默认值)

点击创建

接受更改

然后开始安装(这里也可以直接在安装界面配置ip,也可以使用命令配置)

设置root密码,我设置的是000000六个0

重启

在最小化界面,输入用户名root和密码就可以登陆了

  • 创建compute节点

controller安装完成后,关机,然后克隆一个compute节点的虚拟机

从虚拟机当前状态,创建完整克隆

虚拟机名称改为compute,点击完成



二、iaas云平台搭建

1.配置控制节点主机名

[root@controller ~]#hostsnamectl set-hostname controller
ctrl+D退出重新登陆

2、配置控制节点ip地址(在配置文件中修改和添加以下内容)

[root@controller ~]#ip a  #查看网卡名称
[root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第一块网卡名,仅主机模式那块)
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.100.10
PREFIX=24
GATEWAY=192.168.100.1
 [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第二块网卡名,NAT模式那块)
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.200.10
PREFIX=24
[root@controller ~]# systemctl restart network  #重启网卡

3、配置计算节点主机名

[root@controller ~]#hostnamectl set-hostname compute
Ctrl+D  #退出重新登录 

4、设置计算节点IP地址(修改和添加以下内容)

[root@controller ~]#ip a   #查看网卡名称
[root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第一块网卡名,仅主机模式那块)
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.100.20
PREFIX=24
GATEWAY=192.168.100.1
 [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第二块网卡名,NAT模式那块)
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.200.20
PREFIX=24

5、配置控制节点主机名映射

[root@controller ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute

6、配置计算节点主机名映射(在控制节点使用scp复制过去)

[root@controller ~]# scp /etc/hosts 192.168.100.12://etc/hosts
[root@controller ~]# root@192.168.100.20's password:  #输入密码000000
hosts                 100%  207    77.7KB/s   00:00                                                              
[root@compute ~]# systemctl restart network   #重启网卡

7、关闭防火墙(两个节点都要)

systemctl stop firewalld
systemctl disable firewalld

8、清除iptables(两个节点都要)

iptables -F
iptables -X
iptables -Z
iptables-save

9、关闭selinux(两个节点都要) 

[root@controller ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
[root@controller ~]# setenforce 0
[root@controller ~]# getenforce 0

10、配置控制节点yum源

使用secureFX上传XianDian-IaaS-V2.4CentOS-7-x86_64-DVD-1804镜像到root目录下

[root@controller ~]# ls
anaconda-ks.cfg  CentOS-7-x86_64-DVD-1804.iso  XianDian-IaaS-V2.4.iso

挂载CentOS-7-x86_64-DVD-1804.iso

[root@controller ~]# mount -o loop /root/CentOS-7-x86_64-DVD-1804.iso /mnt/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# cp -rvf /mnt/* /opt/centos
[root@controller ~]# umount /mnt/

挂载XianDian-IaaS-V2.4

[root@controller ~]#mount -o loop /root/XianDian-IaaS-V2.4.iso /mnt/
[root@controller ~]#mkdir /opt/iaas
[root@controller ~]#cp -rvf /mnt/* /opt/iaas
[root@controller ~]#umount /mnt/

配置控制节点yum源

[root@controller ~]#cd /etc/yum.repos.d
[root@controller ~ yum.repos.d]#rm  -rf  *   #清空yum初始文件
[root@controller ~ yum.repos.d]#vi  centos.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

清除yum缓存

yum clean all

查看yum源

yum repolist

11、安装vsftpd服务

yum insatll -y vsftpd

 修改vsftpd配置文件

vi /etc/vsftpd/vsftpd.conf            

添加 anon_root=/opt/ 
 #设置ftp开机自启
systemctl start vsftpd
systemctl enable vsftpd

12、配置计算节点yum源

[root@controller ~]#cd /etc/yum.repos.d
[root@controller ~ yum.repos.d]# rm -rf *  #清空yum文件
[root@controller ~ yum.repos.d]#vi centos.repo
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos          
gpgcheck=0         #两个//,这里可以用浏览器输入ftp://ip地址看一下文件路径看一下是否正确
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas/iaas-repo
gpgcheck=0
enabled=1

清除yum缓存

yum clean all

查看yum源

yum repolist

13、控制节点安装iaas-xiandian

yum install -y iaas-xiandian

14、计算节点安装iaas-xiandian

yum install -y iaas-xiandian

15、编辑环境变量(做到此步建议快照一下,以免接下来的步骤出错)

  • 控制节点环境变量
[root@controller ~]#vi /etc/xiandian/openrc.sh
#可以使用  :%s/PASS=/PASS=000000/  使所以带PASS的内容都设置为000000

需要注意的是:NTERFACE_IP=这里填对应节点IP

HOST_IP=192.168.100.10
HOST_PASS=000000
HOST_NAME=controller
HOST_IP_NODE=192.168.100.20
HOST_PASS_NODE=000000
HOST_NAME_NODE=compute
network_segment_IP=192.168.100.0/24
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=00000
NOVA_DBPASS=000000
NOVA_PASS=00000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_IP=192.168.100.10      #对应节点的IP地址
INTERFACE_NAME=ens34            #第二张网卡名称,也就是外网网卡 
Physical_NAME=provider
minvlan=1        #网段
maxvlan=1000
CINDER_DBPASS=000000
CINDER_PASS=000000
BLOCK_DISK= sdb1(这里要填入的磁盘必须是空的,也就是在最开始说的那块新增的磁盘
SWIFT_PASS=000000
OBJECT_DISK=sdb1   #同上
STORAGE_LOCAL_NET_IP=192.168.100.10
HEAT_DBPASS=000000
HEAT_PASS=000000
ZUN_DBPASS=000000
ZUN_PASS=000000
KURYR_DBPASS=000000
KURYR_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000
BARBICAN_DBPASS=000000
BARBICAN_PASS=000000
  • 计算节点环境变量
    #从controller节点拷贝过去,修改NTERFACE_IP=这里填对应节点IP
    [root@controller ~]# scp /etc/xiandian/openrc.sh 192.168.100.12:/etc/xiandian/
    Are you sure you want to continue connecting (yes/no)?     #yes
    Warning: Permanently added '192.168.100.12' (ECDSA) to the list of known hosts.
    root@192.168.100.12's password:         #000000
    openrc.sh                                                                              100% 3161   841.5KB/s   00:00   
    

16、执行官方安装脚本

先安装控制节点的脚本,全部安装完再安装计算节点的脚本,保险一点,避免出错

iaas-pre-host.sh  #所有节点上执行此脚本
  • controller节点
iaas-install-mysql.sh
iaas-install-keystone.sh
iaas-install-glance.sh
iaas-install-nova-controller.sh
iaas-install-neutron-controller.sh
iaas-install-dashboard.sh

iaas-install-cinder-controller.sh
iaas-install-swift-controller.sh

注意这里的后缀,controller装完再装compute 

  • compute节点
    iaas-install-nova-compute.sh
    iaas-install-neutron-compute.sh
    
    iaas-install-cinder-compute.sh
    iaas-install-swift-compute.sh
    

最小化部署完成,此时可以用浏览器访问:http://192.168.100.10/dashboard

三、创建iaas云主机

在controller节点执行

1、使环境变量生效

[root@controller~]#source /etc/keystone/admin-openrc.sh

2、创建镜像

[root@controller~]#cd /opt/iaas/image
[root@controller~]#ls       #可以查看当前的qcow2 

[root@controller~]#glance image-create --name CentOS7.5 --disk-format qcow2 --container-format bare --progress < /opt/images/CentOS_7.5_x86_64_XD.qcow2     #通过glance命令创建镜像

3、创建外部网络

[root@controller~]#openstack network create ext-net --provider-physical-network provider --provider-network-type flat --external

4、创建内部网络

[root@controller~]#openstack network create int-net1 --provider-network-type vxlan --provider-segment 1

5、创建子网

  • 外网
[root@controller~]#openstack subnet create ext-subnet --network ext-net --gateway 192.168.200.1 --subnet-range 192.168.200.0/24 --allocation-pool start=192.168.200.100,end=192.168.200.200 --dhcp
  • 内网
[root@controller~]#openstack subnet create int-subnet1 --network int-net1 --gateway 10.0.0.1 --subnet-range 10.0.0.0/24 --dhcp

6、创建路由

[root@controller~]#openstack router create ext-router
[root@controller~]#openstack router set ext-router --external-gateway ext-net
[root@controller~]#openstack router add subnet ext-router int-subnet1

7、创建安全组

项目>网络>安全组>管理规则>添加规则(把原有的四个删掉,添加所有ICMP、所有TCP、所有UDP)

 8、创建云主机类型

管理员>资源管理>云主机类型

#命令创建
openstack flavor create --ram 2048 --disk 20 --vcpus 2  Fmin

 9、创建云主机

项目>资源管理>云主机>创建云主机

 放入前面创建好的镜像

 

 选择创建好的内外网,点击创建实例

 

#命令创建
nova boot --image <镜像> --flavor <云主机类型> --nic net-name=<外网> <云主机名称>

10、创建浮动IP并绑定至云主机

点击云主机名称,看看是否能够正常使用,点旁边的小箭头,绑定浮动IP,然后用CRT通过浮动IP进入创建的云主机,能用浮动IP进去,基本没什么问题了。

 

#命令创建
neutron floatingip-create extent

列出浮动IP列表
neutron floatingip-list
neutron port-list

绑定浮动IP
neutron floatingip-associate --fixed-ip-address <内网IP> <浮动IP地址ID> <内网IP地址ID>

原文地址:https://blog.csdn.net/weixin_48218106/article/details/121442529

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年06月12日 01:46
OpenStack与CloudStack
下一篇 2023年06月12日 01:48