前言

大二上学期学习Openstack,苦于百度与CSDN上没有对应版本的教程,学的十分艰难,在此,将我的Openstack云平台搭建过程写出,留给新手学习

准备工作:

VMware Workstation Pro 虚拟机 我使用版本:15.5.2 build-15785246

CentOS-7-x86_64-DVD-1511.iso

XianDian-IaaS-v2.2.iso

补上需要的两个镜像

链接:https://pan.baidu.com/s/1RUzNN4j8myJhMlFerny7uw 
提取码:bxae 
复制这段内容后打开百度网盘手机App,操作更方便哦

虚拟机配置 (controller和compute配置相同):

内存    3G

处理器    2G

硬盘    50G

CD/DVD    CentOS-7-x86_64-DVD-1511.iso

网络适配器    VMnet1

网络适配器2  VMnet2

controller和compute网络配置

主机名 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

compute

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

controller

接下来,进入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
已加载插件:fastestmirrorOne of the configured repositories failed (未知),and yum doesn't have enough cached data to continue. At this point the onlysafe 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 workingupstream. This is most often useful if you are using a newerdistribution release than is supported by the repository (and thepackages for the previous distribution release still work).3. Disable the repository, so yum won't use it by default. Yum will thenjust 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 muchslower). If it is a very temporary problem though, this is often a nicecompromise:yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=trueCannot 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配置

compute

查看是否连接到controller的 opt/ 下面的挂载文件

[root@compute yum.repos.d]# curl ftp://192.168.28.10
-rw-r--r--    1 0        0        2851502080 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

重新启动虚拟机

控制节点安装 (controller)

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

计算节点安装(compute)

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

进入

至此,Openstack云平台的安装结束

先电Openstack云平台搭建【超级详细】【附带镜像】相关推荐

  1. 手把手教你搭建OpenStack云平台(超级详细)

    一.前言 OpenStack云平台搭建需要两个节点,一个是controller(控制节点),另一个是compute(计算节点). 控制节点(controller)规划如下: 一块200G的硬盘.两块网 ...

  2. 云计算 openstack 云平台搭建详细教程(基于 Vmware 虚拟机搭建)

    OpenStack 和 云计算 1.OpenStack 基本概述 早在1988年,类似云计算概念的"网络就是计算机"概念就被 SUN 微系统公司 的合作创建者约翰 · 盖奇首次提出 ...

  3. OpenStack云平台搭建(3) | 部署Glance

    目录 1.登录数据库授权 2.安装glance 3.测试一下 安装部署Glance镜像服务 Image Service  镜像服务: 代号:Glance: 为云平台虚拟机提供镜像服务,例如:上传镜像. ...

  4. OpenStack云平台搭建(4) | 部署Placement

    目录 安装部署Placement 1.登录数据库授权 2.安装palcement-api 安装部署Placement [Placement]服务 是从[nova]服务中拆分出来的组件,作用是收集各个[ ...

  5. 先电iaas云平台搭建(openstack)————搭建过程

    写在前面: 1,在上一篇博客中具体记录了创建controller和compute这两个节点的过程 2,此片博客继续上一篇博客内容 3,使用的远程连接工具为CRT 4,搭建过程两个节点有重复步骤,均以c ...

  6. openstack云平台搭建与使用

    概述 使用CentOS 7系统搭建一个OpenStack私有云平台. 实验目标 (1)掌握Linux系统的基础操作,包括修改主机名和配置网络等. (2)掌握OpenStack私有云平台的搭建. 实验环 ...

  7. OpenStack云平台搭建(5) | 部署Nova

    目录 1.登录数据库配置 2.安装nova 3.计算节点上安装nova 4.在controller节点上 nova组件是用来建虚拟机的(功能:负责响应虚拟机创建请求.调度.销毁云主机) nova主要组 ...

  8. OpenStack云平台搭建

    1.提交RDO一体化部署OpenStack的成果 (1) (2) 2.提交手动分步安装配置OpenStack的成果 (1) (2)

  9. Openstack云平台脚本部署之Ceph存储集群配置(十四)

    目录 一.简介 二.部署脚本 三.参考文档 四.源码 五.系列文章 一.简介 Openstack的后端存储对接Ceph分布式统一存储,将Glance镜像.Nova虚拟机及快照.Cinder-Volum ...

最新文章

  1. 使用snmp4j实现Snmp功能(一)
  2. C指针原理(26)-gtk
  3. MapReduce原理及其主要实现平台分析
  4. Matlab----获取一个文件夹下所有文件名
  5. 简单暴力到dp的优化(中级篇)
  6. oracle中sga的合理设置,oracle学习:SGA_MAX_SIZE参数设置
  7. 大白话5分钟带你走进人工智能-第十九节逻辑回归之优化点(4)
  8. Linux修改主机名称
  9. 解方程求PH值,POJ(2006)
  10. 关于超星脚本出现乱码问题
  11. 波士顿房价数据集 Boston house prices dataset
  12. oracle EBS在中国的客户
  13. 春节假期 最强抢票攻略
  14. 批量将jpg格式图像改为png格式
  15. 深入浅出Zookeeper集群搭建
  16. 计算字符串出现的次数
  17. 解析:外部网页内如何一键复制微信号添加微信好友
  18. android字体不统一,Android下EditText中的字体不统一问题
  19. python编辑俄罗斯方块_python编写俄罗斯方块
  20. p2psearcher绿色版使用方法

热门文章

  1. Android优秀项目下载列表
  2. java locale 印尼_java – 有没有办法在Locale上按国家/地区默认语言?
  3. 木木夕推荐:第二款产品《喜马拉雅》
  4. 从0到1开发可视化数据大屏
  5. pycharm快捷键及相关软件
  6. 美国计算机phd毕业需要几篇论文,美国计算机博士申请
  7. oracle 光纤盘,IBM 5773 4GB PCI-E HBA光纤通道卡 10N7249 HBA
  8. C++ [STL容器反向迭代器]
  9. ubuntu 16.04 设置输入法切换方法
  10. RabbitMQ系列笔记主题订阅模式