Centos7搭建OpenStack+创建iaas云主机

打印 上一主题 下一主题

主题 693|帖子 693|积分 2079

目次
前言
一、创建虚拟机
 创建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.4和CentOS-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缓存
  1. yum clean all
复制代码
  检察yum源
  1. yum repolist
复制代码
11、安装vsftpd服务

  1. 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缓存
  1. yum clean all
复制代码
检察yum源
  1. yum repolist
复制代码
13、控制节点安装iaas-xiandian

  1. yum install -y iaas-xiandian
复制代码
14、盘算节点安装iaas-xiandian

  1. 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、执行官方安装脚本

   先安装控制节点的脚本,全部安装完再安装盘算节点的脚本,保险一点,制止出错
  1. 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、使情况变量生效

  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、创建外部网络

  1. [root@controller~]#openstack network create ext-net --provider-physical-network provider --provider-network-type flat --external
复制代码
4、创建内部网络

  1. [root@controller~]#openstack network create int-net1 --provider-network-type vxlan --provider-segment 1
复制代码
5、创建子网



  • 外网
  1. [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
复制代码


  • 内网
  1. [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>
复制代码



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

数据人与超自然意识

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表