【Openstack Train安装】一、虚拟机创建

Openstack是一个云平台管理的项目,它不是一个软件。这个项目由几个主要的组件组合起来完成一些具体的工作。Openstack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人将 Openstack作为基础设施即服务资源的通用前端。Openstack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用 Openstack前端来设置及管理自己的公共云或私有云。

本教程参考官方安装文档实现:官方文档

安装环境如下

VMware WorkstationV17.0
本机系统win11
虚拟机系统CentOS 7.5

CentOS7.5 百度云下载:百度云提取码:v9qp

本教程共创建2个虚拟机,一个为控制节点(controller),控制节点包含2个网卡,一个为计算节点(compute),计算节点包含2个网卡,网络配置如下:

provider networkmanagement network
controller192.168.59.2010.0.0.11
compute192.168.59.3010.0.0.31

openstack的网络有两种配置方式,分为provider和self-service,本文采用self-service的方式搭建网络,关于网络类型可参考官方文档。

关于密码的说明:由于openstack安装多个不同的组建,需要创建多个密码,为了简单起见,本教程中所有的密码都设置为"123456"。

本教程对应的视频教程:[Openstack Train安装]一、虚拟机创建


一、配置VMware网络

打开VMware,选择 编辑 -> 虚拟网络编辑器:

打开的虚拟网络编辑器如下,以管理模式打开,配置NAT网络:

配置NAT的子网地址,本次实验规划的controller和compute节点的provider网络地址分别为192.168.59.20和192.168.59.30,他们的网络号是192.168.59.0,故将NAT子网的IP设置为192.168.59.0:

记录网关IP(网关IP用于后续配置节点的IP地址,务必记住):

网络配置完毕。

二、创建controller节点

首先创建controller虚拟机,打开VMware workstation:

选择典型,下一步:

选择Centos7.5镜像文件,下一步:

输入用户名和密码,密码为123456:

设置名称和虚拟机安装位置:

设置磁盘50GB,选择单个存储:

点击自定义硬件:

配置内存和处理器:

点击添加,准备添加网卡(controller和compute都要2个网卡):

勾选添加网卡:

第一张网卡使用NAT模式,可以访问互联网,第二章网卡是management网络,负责设备管理,添加LAN区段:

更改第二张网卡的网络连接模式并点击最下方的关闭按钮:

回到安装页面,点击完成:

开启虚拟机(如果勾选了“创建后开启此虚拟机”,则自动开启虚拟机),耐心等待,直到进入如下界面:

安装完毕,进入系统,点击Notlist,输入账号root,密码123456进入系统:

右键,open termimal打开一个终端:

进入 /etc/sysconfig/network-scripts/ 目录下,输入ls,查看当前文件夹内的文件,controller节点有2个网卡,他们的配置文件分别为ifcfg-ens33和ifcfg-ens34,文件名称可能不一样,但是没有关系,这个不影响,只需要在后面修改的时候把路径替换成自己的就可以:

输入命令"vi ifcfg-ens33",进入配置界面,进行如下配置为了防止每次虚拟机开机IP地址变化,将第一张网卡的IP改为静态IP 192.168.59.20(本文一开始规划的IP),网关设置为192.168.59.2(虚拟机网络设置NAT配置里面,默认的网关IP),DNS设置为114.114.114.114(全国通用DNS),第一张网卡用于访问互联网,修改完毕后保存:

接下来配置第二章网卡,第二章网卡属于management network,用于设备管理,输入命令“vi ifcfg-ens34”,进行如下配置(Management Network使用的网络号为10.0.0.0,按照规划,控制节点的IP地址为10.0.0.11),修改完毕后保存:

网络配置完成后,重启网络服务,并关闭NetworkManager:

systemctl restart network
systemctl stop NetworkManager 
systemctl disable NetworkManager

关闭防火墙和selinux(为了简单起见,在实验环节关闭防火墙和selinux,生产环境不建议关闭):

systemctl stop firewalld 
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config

/etc/selinux/config中的SELINUX=disabled即可,如下所示:

将本机的主机名设置为controller,使用如下命令:

hostnamectl set-hostname controller

配置本机的DNS服务,输入命令“vi /etc/hosts”,进行如下配置:

输入命令“reboot”,重启虚拟机。虚拟机重启后,打开终端,输入命令"ifconfig",查看IP配置:

输入命令“ping www.baidu.com”检查是否能够访问外网,如果可以访问外网,controller节点配置结束;如果不可以访问外网,输入命令“dhclient”,再次尝试“ping www.baidu.com”,确保可以访问外网。

控制节点配置完毕,输入“init 0”关机。

三、创建计算节点

确保控制节点关机,右键控制节点->管理->克隆:

下一步,进入下面的界面,再次下一步:

创建完整克隆:

名称改为compute,路径自己配置,点击完成:

compute节点克隆完成,接下来开启虚拟机,登录root用户:

打开终端,输入命令“hostnamectl set-hostname compute”,将主机名设置为compute:

进入目录/etc/sysconfig/network-scripts/,配置网卡ens33:

修改ens33的IP地址为192.168.59.30,保存退出:

输入命令“vi ifcfg-ens34”,配置第二个网卡的地址,保存退出:

 网络配置完成后,重启网络服务,并关闭NetworkManager:

systemctl restart network
systemctl stop NetworkManager 
systemctl disable NetworkManager

关闭防火墙和selinux(为了简单起见,在实验环节关闭防火墙和selinux,生产环境不建议关闭):

systemctl stop firewalld 
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config

/etc/selinux/config中的SELINUX=disabled即可,如下所示:

重启compute节点,输入命令“ping www.baidu.com”,查看能否访问互联网,如果不能访问,输入命令“dhclient”,再次输入命令“ping www.baidu.com”,确保可以访问互联网,如下图:

四、网络通信测试

接下来controller节点开机,在控制节点输入下图命令,确保可以ping通:

在compute节点进行如下测试:

测试完毕,虚拟机安装完成,网络基本配置完成。

致谢

1、感谢Ceased纠正了IP地址错误。

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

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

相关文章

使用AOS实现网页动画效果

在现代Web开发中,动画效果是提升用户体验和页面交互性的重要因素之一。而AOS(Animate On Scroll)作为一个强大的动画库,可以帮助我们轻松地实现网页元素的滚动动画效果。 什么是AOS? AOS是一个基于CSS3和JavaScript的…

Transformer

目录 Encoder Add&Norm:(LayerNorm)Transformer中的归一化(五):Layer Norm的原理和实现 & 为什么Transformer要用LayerNorm - 知乎 (zhihu.com) LayerNorm怎么做的? Feed Forward: FeedForward代码: 公式…

Android 12 及以上授权精确位置和模糊位置

请求位置信息权限 为了保护用户隐私,使用位置信息服务的应用必须请求位置权限。 请求位置权限时,请遵循与请求任何其他运行时权限相同的最佳做法。请求位置权限时的一个重要区别在于,系统中包含与位置相关的多项权限。具体请求哪项权限以及…

栈和队列的OJ题——14.用栈实现队列

14.用栈实现队列 232. 用栈实现队列 - 力扣(LeetCode) /* 解题思路: 此题可以用两个栈实现,一个栈进行入队操作,另一个栈进行出队操作 出队操作: 当出队的栈不为空是,直接进行出栈操作&#xff…

算法通关村第七关—迭代实现二叉树的遍历(黄金)

迭代实现二叉树的遍历 迭代法实现前序遍历 前序遍历是中左右&#xff0c;如果还有左子树就一直向下找。完了之后再返回从最底层逐步向上向右找。不难写出如下代码&#xff1a;&#xff08;注意代码中&#xff0c;空节点不入栈&#xff09; public List<Integer>preorde…

VSCode 中将头文件和头文件函数分离,编译主函数跳出 undefined reference to 的问题解决

VSCode 编写 C &#xff08;.h&#xff0c;.cpp 文件分离&#xff09;代码&#xff0c;编写完成后&#xff0c;编译遇到了编译错误 undefined reference to xxx。 开始还以为使用了 -stdc20 而不能使用 #include “xxx.h" 方式头文件&#xff0c;但仔细一想虽然引入了 im…

基于YOLOv7算法的的高精度实时通用目标检测识别系统(PyTorch+Pyside6+YOLOv7)

摘要&#xff1a;基于YOLOv7算法的高精度实时检测识别系统可用于日常生活中检测与定位多种目标&#xff0c;此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别&#xff0c;同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测算法来训练数据集…

OpenHarmony 应用(HarmonyOS 原生应用)- 写一个 Hello World 并在华为手机上跑起来

OpenHarmony 简介 ArkUI 开发框架 OpenHarmony 提供了一套UI开发框架&#xff0c;即方舟开发框架&#xff08;ArkUI 框架&#xff09;。 两种开发范式 支持两种开发范式&#xff0c;分别是基于ArkTS的声明式开发范式&#xff08;简称“声明式开发范式”&#xff09;和兼容J…

【Leetcode题单】(01 数组篇)刷题关键点总结03【数组的改变、移动】

【Leetcode题单】&#xff08;01 数组篇&#xff09;刷题关键点总结03【数组的改变、移动】&#xff08;3题&#xff09; 数组的改变、移动453. 最小操作次数使数组元素相等 Medium665. 非递减数列 Medium283. 移动零 Easy 大家好&#xff0c;这里是新开的LeetCode刷题系列&…

弦理论的技术探索

弦理论的技术探索 一、引言 弦理论,作为现代物理学中的一个重要分支,旨在揭示宇宙的终极规律。它认为,宇宙中的一切物质和能量都是由微小的弦振动产生的。本文将深入探讨弦理论的技术层面,包括其数学基础、物理应用以及计算机模拟等方面。 二、弦理论的数学基础 弦理论的…

Go连接mysql数据库

package main import ("database/sql""fmt"_ "github.com/go-sql-driver/mysql" ) //go连接数据库示例 func main() {// 数据库信息dsn : "root:roottcp(192.168.169.11:3306)/sql_test"//连接数据库 数据库类型mysql,以及数据库信息d…

【Tkinter 入门教程】

【Tkinter 入门教程】 1. Tkinter库的简介&#xff1a;1.1 GUI编程1.2 Tkinter的定位 2. Hello word! 程序起飞2.1 第⼀个程序2.2 字体颜色主题 3. 组件讲解3.1 tkinter 的核⼼组件3.2 组件的使⽤3.3 标签Label3.3.1 标签显示内容3.3.2 多标签的应⽤程序3.3.3 总结 3.4 按钮but…

Wireshark 协议插件Lua开发 -数据包内嵌协议的解释

概述 因为公司项目涉及的协议打包&#xff0c;协议包内又嵌了一层IP包的奇葩套娃结构&#xff0c;为了方便抓包调试&#xff0c;利用Wireshark的协议插件开发功能&#xff0c;写了一个插件&#xff0c;博文记录以备忘。 环境信息 Wireshark 4.0.3 协议结构体套娃图 插件安装…

【系统运维】Centos部署Haproxy+Keepalived+RabbitMQ高可用集群

1.RabbitMQ高可用集群方案 &#xff08;1&#xff09;RabbitMQ搭建集群的作用&#xff1a;提高可用性、可靠性和处理能力&#xff0c;确保系统提供高效的消息传递服务 高可用性&#xff1a;通过集群&#xff0c;即使其中一个节点发生故障&#xff0c;其他节点仍然可以继续提供…

粉丝提问:岗位与描述不一致,小公司感觉学不到东西,工作内容就是调试,想辞职

0、粉丝问题&#xff1a; 大哥&#xff0c;我毕业已经工作两个月了&#xff0c;在一家小公司&#xff0c;岗位和描述的不一致&#xff0c;感觉就像调试一样&#xff0c;写代码的机会很少也没人带&#xff0c; 我想转嵌入式&#xff0c;您有什么建议的方向吗&#xff0c;或者是…

【异常】捕获线程池执行任务时产生的异常

前言&#xff1a; 在编写程序时&#xff0c;我们为了充分利用多核CPU、加快接口响应速度&#xff0c;通常会使用线程池来处理请求&#xff0c;但线程池执行任务过程中难免会出现异常&#xff0c;导致请求失败。那如果我们想在任务发生异常后捕获异常&#xff0c;并做一些”善后…

12.03 二叉树简单题2

257. 二叉树的所有路径 给你一个二叉树的根节点 root &#xff0c;按 任意顺序 &#xff0c;返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [1,2,3,null,5] 输出&#xff1a;["1->2->5",&q…

Matlab数学建模详解之发电机的最佳调度实现

&#x1f517; 运行环境&#xff1a;Matlab、Python &#x1f6a9; 撰写作者&#xff1a;左手の明天 &#x1f947; 精选专栏&#xff1a;《python》 &#x1f525; 推荐专栏&#xff1a;《算法研究》 #### 防伪水印——左手の明天 #### &#x1f497; 大家好&#x1f917;&am…

智能优化算法应用:基于原子搜索算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于原子搜索算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于原子搜索算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.原子搜索算法4.实验参数设定5.算法结果6.参考…

主键虽两个字,但含义丰富;创建新表,Access会自动创建主键,但也可以手动设置

主键是一种特殊类型的索引字段&#xff0c;用于唯一标识表中的每个记录或行。每个主键值必须是表中唯一一个此类主键值。创建新表时&#xff0c;Access会自动创建具有字段名ID和自动编号数据类型的主键。 你需要了解的有关主键的一些信息 一个表只能有一个主键。 主键字段中…