虚拟环境搭建开源云计算管理平台OpenStack(windows电脑)从搭建虚拟环境开始-VMware-centOS7
虚拟环境搭建开源云计算管理平台OpenStack(windows电脑)从搭建虚拟环境开始-VMware-centOS7
本文将详细说明虚拟机如何安装,并且搭建openstack

目录
一、安装vmware
官网:VMware by Broadcom - Cloud Computing for the Enterprise
先进行注册登录(broadcom support)
登陆后进入以下页面

点击搜索:vmware,然后点击Downloading VMware Workstation Pro

往下滑找到free版本

选择其中一个版本进行下载

需要阅读相关信息后才能勾选,然后再点击下载

下载完成后,双击安装包进行安装,无脑下一步,注意安装位置就行

这两项建议取消

至此vmware17安装完成
二、下载CentOS镜像
这里将提供两种下载方法,网速不好且有网盘会员的可以看本节下面小技巧
方法一:官网进行下载
进入官网:Index of /
选择一个合适的版本下载

进入isos/x86_64文件夹下,点击DVD.iso下载即可

此方法可能比较慢,需要科学上网
方法二:阿里云国内镜像下载
地址:https://mirrors.aliyun.com/centos/
文件位置同上。
小技巧:如果有迅雷或者百度网盘的会员,可以先下载.torrent后缀的文件,这个俗称种子,下载完成后,打开百度网盘上传种子,然后双击种子,就可以在百度网盘高速下载了


三、创建虚拟机

选择下载好的镜像

尽量不要放c盘


右击虚拟机,点击设置
内存4G也行,看个人电脑配置

镜像选择刚下载的镜像centos7-2009,如果有两个镜像可以移除一个

网卡需要两个,点击添加,选择另一个网络适配器

两个网络适配器都是仅主机模式

然后添加三个硬盘(无脑下一步就好)

点击编辑-虚拟网络编辑器-更改设置

如果只有VMnet1,那么就点击添加网络,添加VMnet2仅主机模式,添加后点击应用

完成以上步骤后就可以点击确定,然后开机啦
开机加载ing

四、虚拟机配置
开机完成后,来到虚拟机配置
选择中文

选择安装磁盘,选择40G那个盘即可


设置密码,然后继续安装
安装完成后点击重启
重启后,账号为root,密码为刚刚设置的密码,下图即为登陆成功

修改名 ens33 网络接口的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改为如下

同理修改ens36网络接口文件(名称可能不是这个,输入vi /etc/sysconfig/network-scripts/ifcfg-ens3后,连点两次tab键会看到你对应的文件名),修改完后,按esc,然后输入:wq,保存并退出

以上两处的IP地址和此处应该对应,比如VMnet1为192.168.187.0,那么ens33文件就修改为192.168.187.10

然后重启网络
systemctl restart network
然后随便一个shell连接工具都能连上虚拟机了,我以finalshell为例,连接192.168.187.10


后面操作基本都在shell工具中进行操作
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
修改相关配置文件 vi /etc/selinux/config

修改hosts文件 vi /etc/hosts

删除 rm -rf /etc/yum.repos.d/*
以上完成了基础配置
将虚拟机关机
五、克隆虚拟机
右击,点击管理-克隆


将两台虚拟机重命名controller和compute

启动compute,将ip的尾号从10改为20,参考上面修改ens33和ens36文件
然后重启网卡systemctl restart network
启动controller,然后使用shell连接两台虚拟机

方便区分,修改一下主机名
第一台输入命令,修改为controller:
hostnamectl set-hostname controller
bash
第二台输入命令,修改为compute:
hostnamectl set-hostname compute
bash
六、配置openstack环境
完成上述工作后,下载openstack镜像包
链接: https://pan.baidu.com/s/12k0inRNKl7v9pdgVux82Rw?pwd=m8qv 提取码: m8qv
将openStack和coentOs7的镜像包上传至controller和compute
再root目录下点击上传


上传过程中我可以配置yum源
controller节点:
vi /etc/yum.repos.d/local.repo

创建两个文件夹
mkdir /opt/{centos,iaas}
将上传的镜像挂载
-
-o 为只读,loop以回环设备形式进行挂载,可查阅其中内容
-
挂载物理光驱:直接使用 mount,无需 -o loop;
-
挂载 ISO 文件:需 -o loop
cd /root
mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/
cp -rvf /mnt/* /opt/centos/
umount /mnt/
mount -o loop chinaskills_cloud_iaas_v2.0.3.iso /mnt/
cp -rvf /mnt/* /opt/iaas/
umount /mnt/
然后就可以删除这两个镜像了
rm -rf CentOS-7-x86_64-DVD-2009.iso
rm -rf chinaskills_cloud_iaas_v2.0.3.iso
检查是否加载完毕
yum repolist
大致这样表示成功

yum install vsftpd -y

修改vsftpd配置文件
vi /etc/vsftpd/vsftpd.conf

重启 vsftpd
systemctl restart vsftpd
systemctl enable vsftpd
安装iaas
yum install openstack-iaas -y

修改openrc.sh文件,想一下重复动作是否有快捷键,比如删除每行前面的#号,还有修改密码字段
vi /etc/openstack/openrc.sh
参考:
##--------------------system Config--------------------##
##Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.187.10
##Controller HOST Password. example:000000
HOST_PASS=luo123
##Controller Server hostname. example:controller
HOST_NAME=controller
##Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.187.20
##Compute HOST Password. example:000000
HOST_PASS_NODE=luo123
##Compute Node hostname. example:compute
HOST_NAME_NODE=compute
##--------------------Chrony Config-------------------##
##Controller network segment IP. example:x.x.0.0/16(x.x.x.0/24)
network_segment_IP=192.168.0.0./16
##--------------------Rabbit Config ------------------##
##user for rabbit. example:openstack
RABBIT_USER=openstack
##Password for rabbit user .example:000000
RABBIT_PASS=luo123
##--------------------MySQL Config---------------------##
##Password for MySQL root user . exmaple:000000
DB_PASS=luo123
##--------------------Keystone Config------------------##
##Password for Keystore admin user. exmaple:000000
DOMAIN_NAME=demo
ADMIN_PASS=luo123
DEMO_PASS=luo123
##Password for Mysql keystore user. exmaple:000000
KEYSTONE_DBPASS=luo123
##--------------------Glance Config--------------------##
##Password for Mysql glance user. exmaple:000000
GLANCE_DBPASS=luo123
##Password for Keystore glance user. exmaple:000000
GLANCE_PASS=luo123
##--------------------Placement Config----------------------##
##Password for Mysql placement user. exmaple:000000
PLACEMENT_DBPASS=luo123
##Password for Keystore placement user. exmaple:000000
PLACEMENT_PASS=luo123
##--------------------Nova Config----------------------##
##Password for Mysql nova user. exmaple:000000
NOVA_DBPASS=luo123
##Password for Keystore nova user. exmaple:000000
NOVA_PASS=luo123
##--------------------Neutron Config-------------------##
##Password for Mysql neutron user. exmaple:000000
NEUTRON_DBPASS=luo123
##Password for Keystore neutron user. exmaple:000000
NEUTRON_PASS=luo123
##metadata secret for neutron. exmaple:000000
METADATA_SECRET=luo123
##External Network Interface. example:eth1
INTERFACE_NAME=ens36
##External Network The Physical Adapter. example:provider
Physical_NAME=provider
##First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=1
##Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=400
##--------------------Cinder Config--------------------##
##Password for Mysql cinder user. exmaple:000000
CINDER_DBPASS=luo123
##Password for Keystore cinder user. exmaple:000000
CINDER_PASS=luo123
##Cinder Block Disk. example:md126p3
BLOCK_DISK=sdb
##--------------------Swift Config---------------------##
##Password for Keystore swift user. exmaple:000000
SWIFT_PASS=luo123
##The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=sdc
##The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.187.20
##--------------------Trove Config----------------------##
##Password for Mysql trove user. exmaple:000000
TROVE_DBPASS=luo123
##Password for Keystore trove user. exmaple:000000
TROVE_PASS=luo123
##--------------------Heat Config----------------------##
##Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=luo123
##Password for Keystore heat user. exmaple:000000
HEAT_PASS=luo123
##--------------------Ceilometer Config----------------##
##Password for Gnocchi ceilometer user. exmaple:000000
CEILOMETER_DBPASS=luo123
##Password for Keystore ceilometer user. exmaple:000000
CEILOMETER_PASS=luo123
##--------------------AODH Config----------------##
##Password for Mysql AODH user. exmaple:000000
AODH_DBPASS=luo123
##Password for Keystore AODH user. exmaple:000000
AODH_PASS=luo123
##--------------------ZUN Config----------------##
##Password for Mysql ZUN user. exmaple:000000
ZUN_DBPASS=luo123
##Password for Keystore ZUN user. exmaple:000000
ZUN_PASS=luo123
##Password for Keystore KURYR user. exmaple:000000
KURYR_PASS=luo123
##--------------------OCTAVIA Config----------------##
##Password for Mysql OCTAVIA user. exmaple:000000
OCTAVIA_DBPASS=luo123
##Password for Keystore OCTAVIA user. exmaple:000000
OCTAVIA_PASS=luo123
##--------------------Manila Config----------------##
##Password for Mysql Manila user. exmaple:000000
MANILA_DBPASS=luo123
##Password for Keystore Manila user. exmaple:000000
MANILA_PASS=luo123
##The NODE Object Disk for Manila. example:md126p5.
SHARE_DISK=sdd
##--------------------Cloudkitty Config----------------##
##Password for Mysql Cloudkitty user. exmaple:000000
CLOUDKITTY_DBPASS=luo123
##Password for Keystore Cloudkitty user. exmaple:000000
CLOUDKITTY_PASS=luo123
##--------------------Barbican Config----------------##
##Password for Mysql Barbican user. exmaple:000000
BARBICAN_DBPASS=luo123
##Password for Keystore Barbican user. exmaple:000000
BARBICAN_PASS=luo123
################################################################
######在vi编辑器中执行:%s/^.\{1\}// 删除每行前1个字符(#号)#####
################################################################
将此文件拷贝一份至compute节点
scp /etc/openstack/openrc.sh root@192.168.187.20:/etc/openstack/
初始化
iaas-pre-host.sh
compute节点:
vi /etc/yum.repos.d/ftp.repo

检查compute节点是否生效
yum repolist

同controller安装iaas
yum install openstack-iaas -y
初始化
iaas-pre-host.sh
================================================
当controller节点和compute节点都初始化完成后,需要断开重连
重连后出现Welcome to OpenStack即初始化成功
安装mysql、keystone、glance、placement、nova、neutron
controller节点
iaas-install-mysql.sh
iaas-install-keystone.sh
iaas-install-glance.sh
iaas-install-placement.sh
iaas-install-nova-controller.sh
iaas-install-neutron-controller.sh
iaas-install-dashboard.sh
compute节点
iaas-install-nova-compute.sh
iaas-install-neutron-compute.sh
===================================
以上脚本跑完后controller节点可见如下,即为成功

此时我们可以访问 http://192.168.187.10/dashboard




至此,简单的openstack环境已经搭建完成。
请各位道友务必手动搭建一次,或许里面有许多不懂,都可以借助ai问答;或许会遇到各种报错,这就考察你的细心程度了,如有问题欢迎下方留言,一起探讨。
最后,如果实在需要什么资源下不了的,留言私信我
更多推荐

所有评论(0)