当前位置:   article > 正文

Centos7搭建OpenStack+创建iaas云主机_centos7部署openstack

centos7部署openstack

目录

前言

一、创建虚拟机

 创建controller节点

创建compute节点

二、iaas云平台搭建

三、创建iaas云主机



环境说明

先电2.4

Centos7-1804

VMware16

secureCRT 8.3和secureFX 8.3

前言

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




一、创建虚拟机

  •  创建controller节点

新建虚拟机

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

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

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

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

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

默认推荐就行

创建一个新的虚拟磁盘

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

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

点击编辑虚拟机设置

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

放入准备好的镜像

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

再添加一块网卡为NAT

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

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

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

点击创建

接受更改

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

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

重启

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

  • 创建compute节点

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

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

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



二、iaas云平台搭建

1.配置控制节点主机名

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

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

  1. [root@controller ~]#ip a #查看网卡名称
  2. [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第一块网卡名,仅主机模式那块)
  3. BOOTPROTO=static
  4. ONBOOT=yes
  5. IPADDR=192.168.100.10
  6. PREFIX=24
  7. GATEWAY=192.168.100.1
  8. [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第二块网卡名,NAT模式那块)
  9. BOOTPROTO=static
  10. ONBOOT=yes
  11. IPADDR=192.168.200.10
  12. PREFIX=24
  13. [root@controller ~]# systemctl restart network #重启网卡

3、配置计算节点主机名

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

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

  1. [root@controller ~]#ip a #查看网卡名称
  2. [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第一块网卡名,仅主机模式那块)
  3. BOOTPROTO=static
  4. ONBOOT=yes
  5. IPADDR=192.168.100.20
  6. PREFIX=24
  7. GATEWAY=192.168.100.1
  8. [root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-(第二块网卡名,NAT模式那块)
  9. BOOTPROTO=static
  10. ONBOOT=yes
  11. IPADDR=192.168.200.20
  12. PREFIX=24

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

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

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

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

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

  1. systemctl stop firewalld
  2. systemctl disable firewalld

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

  1. iptables -F
  2. iptables -X
  3. iptables -Z
  4. iptables-save

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

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

10、配置控制节点yum源

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

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

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

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

挂载XianDian-IaaS-V2.4

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

配置控制节点yum源

  1. [root@controller ~]#cd /etc/yum.repos.d
  2. [root@controller ~ yum.repos.d]#rm -rf * #清空yum初始文件
  3. [root@controller ~ yum.repos.d]#vi centos.repo
  4. [centos]
  5. name=centos
  6. baseurl=file:///opt/centos #注意这里是三个///
  7. gpgcheck=0
  8. enabled=1
  9. [iaas]
  10. name=iaas
  11. baseurl=file:///opt/iaas/iaas-repo
  12. gpgcheck=0
  13. enabled=1

清除yum缓存

yum clean all

查看yum源

yum repolist

11、安装vsftpd服务

yum insatll -y vsftpd

 修改vsftpd配置文件

  1. vi /etc/vsftpd/vsftpd.conf
  2. 添加 anon_root=/opt/
  1. #设置ftp开机自启
  2. systemctl start vsftpd
  3. systemctl enable vsftpd

12、配置计算节点yum源

  1. [root@controller ~]#cd /etc/yum.repos.d
  2. [root@controller ~ yum.repos.d]# rm -rf * #清空yum文件
  3. [root@controller ~ yum.repos.d]#vi centos.repo
  4. [centos]
  5. name=centos
  6. baseurl=ftp://192.168.100.10/centos
  7. gpgcheck=0 #两个//,这里可以用浏览器输入ftp://ip地址看一下文件路径看一下是否正确
  8. enabled=1
  9. [iaas]
  10. name=iaas
  11. baseurl=ftp://192.168.100.10/iaas/iaas-repo
  12. gpgcheck=0
  13. 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、编辑环境变量(做到此步建议快照一下,以免接下来的步骤出错)

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

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

  1. HOST_IP=192.168.100.10
  2. HOST_PASS=000000
  3. HOST_NAME=controller
  4. HOST_IP_NODE=192.168.100.20
  5. HOST_PASS_NODE=000000
  6. HOST_NAME_NODE=compute
  7. network_segment_IP=192.168.100.0/24
  8. RABBIT_USER=openstack
  9. RABBIT_PASS=000000
  10. DB_PASS=000000
  11. DOMAIN_NAME=demo
  12. ADMIN_PASS=000000
  13. DEMO_PASS=000000
  14. KEYSTONE_DBPASS=000000
  15. GLANCE_DBPASS=000000
  16. GLANCE_PASS=00000
  17. NOVA_DBPASS=000000
  18. NOVA_PASS=00000
  19. NEUTRON_DBPASS=000000
  20. NEUTRON_PASS=000000
  21. METADATA_SECRET=000000
  22. INTERFACE_IP=192.168.100.10 #对应节点的IP地址
  23. INTERFACE_NAME=ens34 #第二张网卡名称,也就是外网网卡
  24. Physical_NAME=provider
  25. minvlan=1 #网段
  26. maxvlan=1000
  27. CINDER_DBPASS=000000
  28. CINDER_PASS=000000
  29. BLOCK_DISK= sdb1(这里要填入的磁盘必须是空的,也就是在最开始说的那块新增的磁盘
  30. SWIFT_PASS=000000
  31. OBJECT_DISK=sdb1 #同上
  32. STORAGE_LOCAL_NET_IP=192.168.100.10
  33. HEAT_DBPASS=000000
  34. HEAT_PASS=000000
  35. ZUN_DBPASS=000000
  36. ZUN_PASS=000000
  37. KURYR_DBPASS=000000
  38. KURYR_PASS=000000
  39. CEILOMETER_DBPASS=000000
  40. CEILOMETER_PASS=000000
  41. AODH_DBPASS=000000
  42. AODH_PASS=000000
  43. BARBICAN_DBPASS=000000
  44. BARBICAN_PASS=000000
  • 计算节点环境变量
    1. #从controller节点拷贝过去,修改NTERFACE_IP=这里填对应节点IP
    2. [root@controller ~]# scp /etc/xiandian/openrc.sh 192.168.100.12:/etc/xiandian/
    3. Are you sure you want to continue connecting (yes/no)? #yes
    4. Warning: Permanently added '192.168.100.12' (ECDSA) to the list of known hosts.
    5. root@192.168.100.12's password: #000000
    6. openrc.sh 100% 3161 841.5KB/s 00:00

16、执行官方安装脚本

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

iaas-pre-host.sh  #所有节点上执行此脚本
  • controller节点
  1. iaas-install-mysql.sh
  2. iaas-install-keystone.sh
  3. iaas-install-glance.sh
  4. iaas-install-nova-controller.sh
  5. iaas-install-neutron-controller.sh
  6. iaas-install-dashboard.sh
  7. iaas-install-cinder-controller.sh
  8. iaas-install-swift-controller.sh

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

  • compute节点
    1. iaas-install-nova-compute.sh
    2. iaas-install-neutron-compute.sh
    3. iaas-install-cinder-compute.sh
    4. iaas-install-swift-compute.sh

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

三、创建iaas云主机

在controller节点执行

1、使环境变量生效

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

2、创建镜像

  1. [root@controller~]#cd /opt/iaas/image
  2. [root@controller~]#ls #可以查看当前的qcow2
  3. [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、创建路由

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

7、创建安全组

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

 8、创建云主机类型

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

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

 9、创建云主机

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

 放入前面创建好的镜像

 

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

 

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

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

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

 

  1. #命令创建
  2. neutron floatingip-create extent
  3. 列出浮动IP列表
  4. neutron floatingip-list
  5. neutron port-list
  6. 绑定浮动IP
  7. neutron floatingip-associate --fixed-ip-address <内网IP> <浮动IP地址ID> <内网IP地址ID>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/580404
推荐阅读
相关标签
  

闽ICP备14008679号