使用脚本部署openstack平台

news2024/12/29 9:57:25

两台虚拟机,compute和controller
建议两台虚拟机都配置,内存4G,硬盘60G,网络要在虚拟机设置这里添加一个网络适配器,第一个是主机模式192.168.10.0,第二个是NAT模192.168.20.0,
可以在此处了解一下三种不一样的虚拟机联网方式
虚拟机联网的三种方式
总结一下:
仅主机模式
​ 虚拟机只与主机共享一个专用网络,与外部网络无法通信(ping不通外网)。
NAT模式
​ 虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换(NAT)设备对IP进行转换。虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟机。
桥接模式
​ 虚拟机直接连接外部网络的模式,主机起到了网桥的作用。在这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的。
(第一块网卡直接选择主机模式,第二块网卡选择NAT也是可以的,主机模式对应控制面板-适配器中的vm1,NAT模式对应适配器vm8,可以在网络中心查看两者的连接状态,总之,主机模式下的ip可用于连接CRT,也可以ping本电脑ip,但无法ping外网,最终如果主机模式下的ip能正常连接CRT,而且可以ping www.baidu.com,则网络状态没问题。如果安装过程中遇到,安装失败,第一检查yum list,第二检查网络,如果外网ping不通了,要检查网络问题。建议如果实在找不出来问题,将第二块网卡的配置文件补上,BOOTPROTO可以选择dhcp,随意,然后关闭虚拟机,在编辑下的虚拟网络设置中还原网络设置,再重新打开虚拟机查看是否两块网卡都有ip,也有dhcp池满的可能,将dhcp设置中默认租用时间调整与下面的最大租用时间一样)
先讲如何增加第二块网卡:
首先进入编辑里,选择添加,比如我这里是VMnet2,添加之后选择主机模式,按要求配置好网段。

在这里插入图片描述
在这里插入图片描述

再进入虚拟机设置页面,添加第二个网络适配器,需要主机模式的网卡,请选择自定义,在下拉框里选择刚才设置的网络即可
在这里插入图片描述

连接CRT进行操作
在computer节点更改ip,注意eno16777736是主机模式的网卡,另一个33554976是NAT模式,如果需要配置,也写一遍如下的配置文件,但是BOOTPROTO可以用dhcp,自动获取ip。这里注意,在编辑的虚拟机网络设置中是有DHCP这个勾选的,我们在更改网卡配置文件的时候,这个勾选会随配置文件改变,如果没有对应变化,或者是检查都没有错误依然ip a没有ip,无法联网,可能是网卡并没有生效,进入控制面板的适配器里双击该网卡,看看发送接收是否正常,ip是否是自己设置的状态,如果都没有错误,可以尝试在虚拟机网络设置中还原默认配置
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=79178a90-ca7d-409b-9ddb-fa46112721bd
DEVICE=eno16777736
ONBOOT=yes
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR=192.168.10.20
netmask=255.255.255.0
DNS1=192.168.1.1
DNS2=8.8.8.8

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno33554976

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNX=yes
PEERROUTES=yes
IPV4_FAILIRE_FATAL=yes
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=yes
NAME=eno33554976
DEVICE=eno33554976
ONBOOT=yes
IPADDR=192.168.20.10
NETMASK=255.255.255.0
DNS1=8.8.8.8

restart的网络,下面这句在VM里面运行,之后再ip a查一下是否更改成功,由于此后要用到ftp,还可以尝试ping一下网络看是否联通
[root@localhost ~]# ping www.baidu.com
PING www.a.shifen.com (120.232.145.144) 56(84) bytes of data.
64 bytes from 120.232.145.144: icmp_seq=1 ttl=128 time=14.8 ms
64 bytes from 120.232.145.144: icmp_seq=2 ttl=128 time=14.2 ms
如上表示联通了,可以按ctrl+z退出
[root@localhost ~]#systemctl restart network
重新连接CRT
control节点一样的操作,将IP改成192.168.10.10
然后在控制节点的root目录下上传两个镜像文件,
在这里插入图片描述

[root@localhost ~]# mkdir /opt/centos7.2
[root@localhost ~]# mkdir /opt/iaas
[root@localhost ~]# mount /root/CentOS-7-x86_64-DVD-1511.iso /opt/centos7.2
mount: /dev/loop0 is write-protected, mounting read-only
[root@localhost ~]# mount /root/XianDian-IaaS-v2.2.iso /opt/iaas/
mount: /dev/loop1 is write-protected, mounting read-only
配置挂载文件
[root@localhost ~]# rm -rf /etc/yum.repos.d/CentOS- *
[root@localhost ~]# cat > /etc/yum.repos.d/local.repo <<EOF
下面每个>提示符后面输入对应一行内容

[centos]
name=centos
baseurl=file:///opt/centos7.2
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1
EOF

以上是另一种编写方法,用vi也是一样的,文件内容一样
在计算节点输入,也就是不在计算节点上传两个镜像包,而是利用ftp从控制节点下载
[root@localhost ~]# rm -rf /etc/yum.repos.d/CentOS- *
[root@localhost ~]# cat > /etc/yum.repos.d/local.repo <<EOF

[centos]
name=centos
baseurl=ftp://192.168.10.10/centos7.2
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.10.10/iaas/iaas-repo
gpgcheck=0
enabled=1
EOF

在控制节点,安装ftp服务
[root@localhost ~]# yum install vsftpd -y
出现complete以后,修改配置文件(这里如果报错,没有镜像源,则回去检查修改ip的地方dns配置了没有,如果是报错another app,运行下句
rm -f /var/run/yum.pid

Complete!
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
anon_root=/opt
[root@localhost ~]# systemctl restart vsftpd
两边的节点关闭防火墙
[root@localhost ~]# setenforce 0
[root@localhost ~]# iptables -F
[root@localhost ~]# iptables -X
[root@localhost ~]# iptables -Z
[root@localhost ~]# systemctl stop firewalld
这里讲一下可能出现的问题,首先,网络出现问题,ip a检查看看,如果ip不见了,去检查一下两个网卡各自的配置文件,再重启网络
systemctl restart network;如果关防火墙的时候关不了,提示Failed to stop firewalld.service: Unit firewalld.service not loaded.,需要重新安装yum install firewalld

两边节点安装xiandian,命令一样,计算节点可能会稍慢,一样以Complete!为准
[root@localhost ~]# yum install iaas-xiandian -y
两边节点修改配置文件,注意INTERFACE_NAME=eno33554976是第二块网卡的名字
[root@localhost ~]# cat /etc/xiandian/openrc.sh

##--------------------system Config--------------------##
##Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.10.10

##Controller Server hostname. example:controller
HOST_NAME=controller

##Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.10.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=eno33554976

##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=000000

##Password for Keystore cinder user. exmaple:000000
CINDER_PASS=000000

##Cinder Block Disk. example:md126p3
BLOCK_DISK=sda3

##--------------------Trove Config--------------------##
##Password for Mysql Trove User. exmaple:000000
TROVE_DBPASS=000000

##Password for Keystore Trove User. exmaple:000000
TROVE_PASS=000000

##--------------------Swift Config---------------------##
##Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000

##The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=sda4

##The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.10.20

##--------------------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=

开始安装openstack平台
控制节点和计算节点各自安装iaas
[root@localhost ~]# iaas-pre-host.sh
出现这句Please Reboot or Reconnect the terminal ,重新连接,如果成功,主机名会自动更改。
安装数据库
[root@controller ~]# iaas-install-mysql.sh

安装keystone认证服务
[root@controller ~]# iaas-install-keystone.sh

安装Glance镜像服务
[root@controller ~]# iaas-install-glance.sh

安装Nova计算服务
[root@controller ~]# iaas-install-nova-controller.sh

安装Neutron网络服务
[root@controller ~]# iaas-install-neutron-controller.sh

[root@controller ~]# iaas-install-neutron-controller-gre.sh

安装Dashboard服务
[root@controller ~]# iaas-install-dashboard.sh

安装Cinder块存储服务
[root@controller ~]# iaas-install-cinder-controller.sh

安装Swift对象存储服务
[root@controller ~]# iaas-install-swift-controller.sh

compute节点上自行安装 [ nova-compute组件,neutron-compute组件,cinder-compute组件,swift-compute组件]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1595376.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue源码解析——diff算法/双端比对/patchFlag/最长递增子序列

虚拟dom——virtual dom&#xff0c;提供一种简单js对象去代替复杂的 dom 对象&#xff0c;从而优化 dom 操作。virtual dom 是“解决过多的操作 dom 影响性能”的一种解决方案。virtual dom 很多时候都不是最优的操作&#xff0c;但它具有普适性&#xff0c;在效率、可维护性之…

C++ 之 【类与对象】从入门到精通一条龙服务 最终篇(static成员、友元、匿名对象。。。)

&#x1f4b4;到用时方恨早&#xff0c;白首方悔挣的少 车到山前没有路&#xff0c;悬崖勒马勒不住 一、再谈构造函数 1.构造函数体赋值 2.初始化列表 3.explicit关键字 二、Static成员 1.概念 2.特性 三、友元 1.友元函数 2.友元类 四、内部类 五、匿名对象 六、…

【uniapp】vscode安装插件、ts校验、允许json文件注释

1、vscode安装的插件&#xff1a; uni-create-viewuni-hlperuniapp小程序扩展 2、ts校验 安装插件&#xff1a; pnpm i -D types/wechat-miniprogram uni-helper/uni-app-types配置tsconfig.json {"extends": "vue/tsconfig/tsconfig.json","compi…

向量 | vector;标量 | scalar;矩阵;张量

目录 什么是标量 什么是向量? 向量的3种表达方式 向量的矩阵表示 什么是矩阵 什么是张量 什么是标量 标量只有大小概念,没有方向的概念。通过一个具体的数值就能表达完整。 比如:重量、温度、长度、提及、时间、热量等都数据标量。

gzip,bzip2,xz,tar-读书笔记(九)

gzip 将文件进行压缩 在Linux系统中&#xff0c;gzip 是一个压缩和解压文件的命令工具。它使用LZ77压缩算法及霍夫曼编码&#xff08;Huffman Coding&#xff09;来压缩文件&#xff0c;通常用来减少文件的大小&#xff0c;以节约磁盘空间或减少网络传输的时间。 gzip 命令的…

SpringBoot集成JWT快速入门Demo

目录 1. 概述 2. JWT的请求流程 3. Session认证与JWT认证的区别 4 JWT优缺点 4.1 优点 4.2 缺点 5. 快速入门 5.1 创建工程 5.2 导入依赖 5.3 添加配置文件 5.4 添加Swagger2配置类 5.5 添加JWT工具类 5.6 添加entity、service、controller类 5.7 添加拦截器类 …

【Linux】CentOS 7安装后没有图形界面

专栏文章索引&#xff1a;Linux 有问题可私聊&#xff1a;QQ&#xff1a;3375119339 目录 一、项目场景 二、问题描述 三、原因分析 四、解决方案 1.当前处于命令行界面&#xff0c;可以切换为图形界面 2.安装时没有安装图形界面&#xff0c;选择了Minimal Install 3.下…

【Linux】磁盘分区扩容到原有目录(LVM)

一、LVM基本组成 LVM(Logical Volume Manager&#xff0c;逻辑卷管理)逻辑卷管理器是负责管理物理卷、卷组和逻辑卷的软件层。它提供了创建、调整和管理这些组件的命令和工具&#xff0c;使得用户能够灵活地调整和管理磁盘空间。 1.物理卷&#xff08;PV&#xff0c;Physical…

基于Springcloud可视化项目:智慧工地可视化大数据云平台源码

目录 技术架构 智慧工地系统在实际推行过程中遇到的问题 智慧工地接纳程度较低 基础设施条件有待完善 智慧工地整体生态尚未完善 智慧工地平台各功能模块 施工过程工信程息信管息理管模理块 人员管理模块 生产管理模块 技术管理模块 质量管理模块 安全管理模块 绿…

免费的 ChatGPT 网站(六个)

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f3a5;系列专栏&#xff1a;《C语言》 《数据结构》 《C》 《Linux》 《Cpolar》 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 文章目录 一、insCode二、讯飞星火三、豆包四、文心一言五、通义千问六、360智脑 现在智能…

关于GDAL计算图像坐标的几个问题

关于GDAL计算图像坐标的几个问题_gdal读取菱形四角点坐标-CSDN博客 这篇文章写的很好&#xff0c;讲清楚了图像行列号与图像点坐标&#xff08;x,y&#xff09;对应关系&#xff0c;以及图像行列号如何转为地理坐标的&#xff0c;转载一下做个备份。 1.关于GDAL计算图像坐标的…

【Python】使用OPC UA创建数据服务器

目录 准备工作服务器设置创建或获取节点设置节点值启动服务器查看服务器客户端总结 在工业自动化和物联网&#xff08;IoT&#xff09;领域&#xff0c;OPC UA&#xff08;开放平台通信统一架构&#xff09;已经成为一种广泛采用的数据交换标准。它提供了一种安全、可靠且独立于…

51单片机-独立按键模块

1. 独立按键控制LED状态 轻触按键实现原理&#xff1a;按下时&#xff0c;接通&#xff0c;通过金属弹片受力弹动来实现接通和断开。 松开按键 按下之后&#xff1a;就会被连接 同时按下K1和K2时&#xff0c;P2_0,接口所连LED灯才亮。 #include <REGX52.H> void ma…

【opencv】示例-travelsalesman.cpp 使用模拟退火算法求解旅行商问题

// 载入 OpenCV 的核心头文件 #include <opencv2/core.hpp> // 载入 OpenCV 的图像处理头文件 #include <opencv2/imgproc.hpp> // 载入 OpenCV 的高层GUI(图形用户界面)头文件 #include <opencv2/highgui.hpp> // 载入 OpenCV 的机器学习模块头文件 #includ…

Devin AI: The World’s First AI Software Engineer

Devin AI是Cognition AI团队推出的一款名为Devin的人工智能软件工程师&#xff0c;它被誉为世界上第一个完全自主的AI软件工程师。Devin AI在2024年3月12日发布&#xff0c;并在SWE-bench编码基准测试中设立了新的技术标杆。 Devin AI具备多项强大的能力&#xff0c;包括学习如…

简述OSI七层模型及每层的功能任务和协议

文章目录 一、OSI七层模型的功能和任务1.物理层2.数据链路层3.网络层4.传输层5.会话层6.表示层7. 应用层 二、OSI七层模型每层的协议 开放系统互连参考模型&#xff08;Open System Interconnect&#xff0c;简称OSI&#xff09;是国际标准化组织(ISO)和国际电报电话咨询委员会…

openstack安装dashboard后登录网页显示404错误

1. 2.进入该目录vim /etc/httpd/conf.d/openstack-dashboard.conf 增加这一行 WSGIApplicationGroup %{GLOBAL} 重启httpd后就可以访问了

SpringBoot+FreeMaker

目录 1.FreeMarker说明2.SpringBootFreeMarker快速搭建Pom文件application.properties文件Controller文件目录结构 3.FreeMarker数据类型3.1.布尔类型3.2.数值类型3.3.字符串类型3.4.日期类型3.5.空值类型3.6.sequence类型3.7.hash类型 4.FreeMarker指令assign自定义变量指令if…

[大模型]DeepSeek-7B-chat FastApi 部署调用

DeepSeek-7B-chat FastApi 部署调用 DeepSpeek 介绍 由70亿个参数组成的高级语言模型 DeepSeek LLM。它是在一个包含2万亿个英文和中文代币的庞大数据集上从零开始训练的。为了促进研究&#xff0c;DeepSeek 已经为研究社区开放了DeepSeek LLM 7B/67B Base 和 DeepSeek LLM 7…

软考129-上午题-【软件工程】-McCabe度量法+白盒测试真题

一、真题 真题1&#xff1a; 简单路径&#xff1a; 简单路径是指在一个图中&#xff0c;从一个顶点出发&#xff0c;经过一系列不同的顶点&#xff0c;最终到达另一个顶点&#xff0c;且在整个过程中&#xff0c;除了起点和终点外&#xff0c;每个顶点只被访问一次的路径。在简…