Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
openstack先电版_云管理平台,希望能够帮助你!!!。
大二上学期学习Openstack,苦于百度与CSDN上没有对应版本的教程,学的十分艰难,在此,将我的Openstack云平台搭建过程写出,留给新手学习
VMware Workstation Pro 虚拟机 我使用版本:15.5.2 build-
CentOS-7-x86_64-DVD-1511.iso
XianDian-IaaS-v2.2.iso
链接:https://pan.baidu.com/s/1RUzNN4j8myJhMlFerny7uw
提取码:bxae
复制这段内容后打开百度网盘手机App,操作更方便哦
内存 3G
处理器 2G
硬盘 50G
CD/DVD CentOS-7-x86_64-DVD-1511.iso
网络适配器 VMnet1
网络适配器2 VMnet2
主机名 | VMnet1 | VMnet2 |
controller | 192.168.28.10 | 192.168.128.10 |
compute | 192.168.28.20 | 192.168.128.20 |
controller改主机名字,关防火墙,设置主机映射开启虚拟机
hostnamectl set-hostname controller systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config cat >>/etc/hosts<<eof 192.168.28.10 controller 192.168.28.20 compute eof
hostnamectl set-hostname compute systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config cat >>/etc/hosts<<eof 192.168.28.10 controller 192.168.28.20 compute eof
接下来,进入opt目录,创建挂载点 centos 以及 iaas,并使用CRT将xiandian镜像传入opt目录下
cd /opt mkdir centos iaas
设置开机自动挂载镜像文件
cat >>/etc/fstab<<eof /dev/cdrom /opt/centos iso9660 defaults 0 0 /opt/XianDian-IaaS-v2.2.iso /opt/iaas iso9660 defaults 0 0 eof
挂载立即生效
mount -a
进入 /etc/yum.repos.d 目录,删除或移动里面的大写C开头的文件,否则后面会造成缓存错误,载创建repo源文件
cd /etc/yum.repos.d mkdir bk mv C* bk cat >>/etc/yum.repos.d/local.repo<<eof [centos] name=centos baseurl=file:///opt/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=file:///opt/iaas/iaas-repo gpgcheck=0 enabled=1 eof
清除缓存,生成缓存
yum clean all yum makecache
出现提示,说明是成功了(不需要和我的完全一摸一样,因为iso版本的不同,生成的缓存也不同)
[root@controller ~]# yum makecache 已加载插件:fastestmirror centos | 3.6 kB 00:00:00 iaas | 2.9 kB 00:00:00 (1/7): centos/filelists_db | 2.9 MB 00:00:00 (2/7): centos/group_gz | 155 kB 00:00:00 (3/7): iaas/filelists_db | 1.9 MB 00:00:00 (4/7): iaas/primary_db | 2.3 MB 00:00:00 (5/7): centos/primary_db | 2.8 MB 00:00:00 (6/7): iaas/other_db | 692 kB 00:00:00 (7/7): centos/other_db | 1.2 MB 00:00:00 Determining fastest mirrors 元数据缓存已建立
注意,如果出现 下面展示 的段落信息,说明你之前的步骤出错了,可能是yum源没配置好,也可能是没挂载好,这里很坑
[root@compute yum.repos.d]# yum makecache 已加载插件:fastestmirror One of the configured repositories failed (未知), and yum doesn't have enough cached data to continue. At this point the only safe thing yum can do is fail. There are a few ways to work "fix" this: 1. Contact the upstream for the repository and get them to fix the problem. 2. Reconfigure the baseurl/etc. for the repository, to point to a working upstream. This is most often useful if you are using a newer distribution release than is supported by the repository (and the packages for the previous distribution release still work). 3. Disable the repository, so yum won't use it by default. Yum will then just ignore the repository until you permanently enable it again or use --enablerepo for temporary usage: yum-config-manager --disable <repoid> 4. Configure the failing repository to be skipped, if it is unavailable. Note that yum will try to contact the repo. when it runs most commands, so will have to try and fail each time (and thus. yum will be be much slower). If it is a very temporary problem though, this is often a nice compromise: yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true Cannot find a valid baseurl for repo: centos
如果是出现了 /var/run/yum.pid 的消息
执行下面这段命令即可
rm -rf /var/run/yum.pid
接下来安装vsftpd和iaas-xiandian
yum install iaas-xiandian vsftpd -y
在controller上安装 ftp(文件传输)服务
增加匿名访问
cat >>/etc/vsftpd/vsftpd.conf<<eof anon_root=/opt eof systemctl restart network systemctl start vsftpd systemctl enable vsftpd
接下来配置xiandian的openrc.sh应答文件(一个字都不能错)
sed -i 's/.//' /etc/xiandian/openrc.sh sed -i 's/PASS=/PASS=000000/g' /etc/xiandian/openrc.sh sed -i 's/HOST_IP=/HOST_IP=192.168.28.10/g' /etc/xiandian/openrc.sh sed -i 's/HOST_NAME=/HOST_NAME=controller/g' /etc/xiandian/openrc.sh sed -i 's/HOST_IP_NODE=/HOST_IP_NODE=192.168.28.20/g' /etc/xiandian/openrc.sh sed -i 's/HOST_NAME_NODE=/HOST_NAME_NODE=compute/g' /etc/xiandian/openrc.sh sed -i 's/RABBIT_USER=/RABBIT_USER=openstack/g' /etc/xiandian/openrc.sh sed -i 's/DOMAIN_NAME=/DOMAIN_NAME=demo/g' /etc/xiandian/openrc.sh sed -i 's/METADATA_SECRET=/METADATA_SECRET=000000/g' /etc/xiandian/openrc.sh sed -i 's/INTERFACE_NAME=/INTERFACE_NAME=ens34/g' /etc/xiandian/openrc.sh
接着使用命令 cat /etc/xiandian/openrc.sh 查看配置文件,配置完后,应如下图
#--------------------system Config--------------------## #Controller Server Manager IP. example:x.x.x.x HOST_IP=192.168.28.10 #Controller Server hostname. example:controller HOST_NAME=controller #Compute Node Manager IP. example:x.x.x.x HOST_IP_NODE=192.168.28.20 #Compute Node hostname. example:compute HOST_NAME_NODE=compute #--------------------Rabbit Config ------------------## #user for rabbit. example:openstack RABBIT_USER=openstack #Password for rabbit user .example:000000 RABBIT_PASS=000000 #--------------------MySQL Config---------------------## #Password for MySQL root user . exmaple:000000 DB_PASS=000000 #--------------------Keystone Config------------------## #Password for Keystore admin user. exmaple:000000 DOMAIN_NAME=demo ADMIN_PASS=000000 DEMO_PASS=000000 #Password for Mysql keystore user. exmaple:000000 KEYSTONE_DBPASS=000000 #--------------------Glance Config--------------------## #Password for Mysql glance user. exmaple:000000 GLANCE_DBPASS=000000 #Password for Keystore glance user. exmaple:000000 GLANCE_PASS=000000 #--------------------Nova Config----------------------## #Password for Mysql nova user. exmaple:000000 NOVA_DBPASS=000000 #Password for Keystore nova user. exmaple:000000 NOVA_PASS=000000 #--------------------Neturon Config-------------------## #Password for Mysql neutron user. exmaple:000000 NEUTRON_DBPASS=000000 #Password for Keystore neutron user. exmaple:000000 NEUTRON_PASS=000000 #metadata secret for neutron. exmaple:000000 METADATA_SECRET=000000 #External Network Interface. example:eth1 INTERFACE_NAME=ens37 #First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101 minvlan= #Last Vlan ID in VLAN RANGE for VLAN Network. example:200 maxvlan= #--------------------Cinder Config--------------------## #Password for Mysql cinder user. exmaple:000000 CINDER_DBPASS= #Password for Keystore cinder user. exmaple:000000 CINDER_PASS= #Cinder Block Disk. example:md126p3 BLOCK_DISK= #--------------------Trove Config--------------------## #Password for Mysql Trove User. exmaple:000000 TROVE_DBPASS= #Password for Keystore Trove User. exmaple:000000 TROVE_PASS= #--------------------Swift Config---------------------## #Password for Keystore swift user. exmaple:000000 SWIFT_PASS= #The NODE Object Disk for Swift. example:md126p4. OBJECT_DISK= #The NODE IP for Swift Storage Network. example:x.x.x.x. STORAGE_LOCAL_NET_IP= #--------------------Heat Config----------------------## #Password for Mysql heat user. exmaple:000000 HEAT_DBPASS= #Password for Keystore heat user. exmaple:000000 HEAT_PASS= #--------------------Ceilometer Config----------------## #Password for Mysql ceilometer user. exmaple:000000 CEILOMETER_DBPASS= #Password for Keystore ceilometer user. exmaple:000000 CEILOMETER_PASS= #--------------------AODH Config----------------## #Password for Mysql AODH user. exmaple:000000 AODH_DBPASS= #Password for Keystore AODH user. exmaple:000000 AODH_PASS=
至此,controller停止配置,开始compute配置
查看是否连接到controller的 opt/ 下面的挂载文件
[root@compute yum.repos.d]# curl ftp://192.168.28.10 -rw-r--r-- 1 0 0 Jun 04 2020 XianDian-IaaS-v2.2.iso dr-xr-xr-x 8 0 0 2048 Dec 09 2015 centos drwxr-xr-x 4 0 0 2048 Nov 06 2017 iaas
进入opt目录,创建centos和iaas文件,移动或删除大写C开头文件,创建一个ftp.repo源文件
cd /opt mkdir centos iaas cd /etc/yum.repos.d/ mkdir bk mv C* bk touch ftp.repo
进入 /etc/yum.repos.d/ftp.repo 写入
cat >>/etc/yum.repos.d/ftp.repo<<eof [centos] name=centos baseurl=ftp://192.168.28.10/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=ftp://192.168.28.10/iaas/iaas-repo gpgcheck=0 enabled=1 eof
清除缓存,生成缓存
yum clean all yum makecache
如出现以下画面,说明成功
[root@compute yum.repos.d]# yum makecache 已加载插件:fastestmirror centos | 3.6 kB 00:00:00 iaas | 2.9 kB 00:00:00 (1/7): centos/group_gz | 155 kB 00:00:00 (2/7): centos/filelists_db | 2.9 MB 00:00:00 (3/7): centos/primary_db | 2.8 MB 00:00:00 (4/7): centos/other_db | 1.2 MB 00:00:00 (5/7): iaas/filelists_db | 1.9 MB 00:00:00 (6/7): iaas/primary_db | 2.3 MB 00:00:00 (7/7): iaas/other_db | 692 kB 00:00:00 Determining fastest mirrors 元数据缓存已建立
下载 iaas-xiandain 进入 /etc/xiandian ,将openrc.sh 改名为openrc.sh.bk 备份 以防出现错误
再将 controller(192.168.28.10)中的 /etc/xiandian/openrc.sh 文件传输到 本机
yum -y install iaas-xiandian cd /etc/xiandian mv openrc.sh openrc.sh.bk scp 192.168.28.10:/etc/xiandian/openrc.sh openrc.sh
两个节点均执行初始化脚本
iaas-pre-host.sh
注意:执行需要一段时间,不要去按回车什么的了,在出现 【reboot】提示后,必须重启,否则之后的实例发不出去,问题很大!!!
两台均重启
reboot
重新启动虚拟机
cd /usr/local/bin cat >>/usr/local/bin/all-in-one.sh<<eof iaas-install-mysql.sh iaas-install-keystone.sh iaas-install-glance.sh iaas-install-nova-controller.sh iaas-install-neutron-controller.sh iaas-install-neutron-controller-gre.sh iaas-install-dashboard.sh eof source all-in-one.sh
cd /usr/local/bin cat >>/usr/local/bin/all-in-one.sh<<eof iaas-install-nova-compute.sh iaas-install-neutron-compute.sh iaas-install-neutron-compute-gre.sh eof source all-in-one.sh
安装需要很长时间,请耐心等待
执行完成后
使用Chrome浏览器访问(其他浏览器不太好,造成访问不到)
http://控制IP/dashboard
我的控制节点IP为 192.168.28.10
所以我访问
http://192.168.28.10/dashboard
域:demo
用户名:admin
密码:000000
进入
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章