OpenStack离线Train版安装系列—2计算节点-环境准备

2024-09-08 10:58

本文主要是介绍OpenStack离线Train版安装系列—2计算节点-环境准备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本系列文章包含从OpenStack离线源制作到完成OpenStack安装的全部过程。
在本系列教程中使用的OpenStack的安装版本为第20个版本Train(简称T版本),2020年5月13日,OpenStack社区发布了第21个版本Ussuri(简称U版本)。

OpenStack部署系列文章
OpenStack Victoria版 安装部署系列教程
OpenStack Ussuri版 离线安装部署系列教程(全)
OpenStack Train版 离线安装部署系列教程(全)
欢迎留言沟通,共同进步。


文章目录

  • 计算节点环境准备
    • 一、部署规划
      • 1.系统说明
      • 2.部署规划
    • 二、环境准备
      • 1.基础网络
      • 2.主机名称
        • (1)文件修改
        • (2)验证连通性
      • 3.免密登录
      • 4.禁用防火墙
        • (1)关闭iptables
        • (2)关闭 selinux
      • 5.yum源配置
        • (1)新建repo文件
        • (2)更新软件源
    • 三、系统基础软件安装
      • 1.Linux工具
      • 2.NTP时间同步
    • 四、OpenStack基础软件安装
      • 1、(省略)OpenStack仓库安装
      • 2.OpenStack客户端相关软件
    • 五、完成计算节点环境准备


计算节点环境准备

一、部署规划

官方参考链接:OpenStack安装指南:环境,OpenStack安装指南:服务组件
CSDN博客参考:CentOS7安装OpenStack(Rocky版)-05.安装一个nova计算节点实例

1.系统说明

(1)服务器操作系统
系统:Centos7
版本:CentOS-7-x86_64-Minimal-1908
镜像:阿里云下载地址CentOS-7-x86_64-Minimal-1908

(2)开发环境
VMware workstation Pro
在这里插入图片描述

(3)OpenStack版本:Train

2.部署规划

在这里插入图片描述
(1)节点说明
控制节点:controller,服务组件
计算节点:compute1,服务组件
可选节点:block等,其他各种服务组件。。。等

(2)物理网络
在部署之前做好网络部署规划,相关参考OpenStack官方安装指南:环境-网络。
①管理网IP地址段选择,建议使用使用官方文档中的示例地址段;
②物理网卡1,默认使用第1张网卡ens33,作为管理网卡;
③物理网卡2,可以为供应商网络;provider network。
至少准备两张网卡,建议网卡数量≥3.

管理网络:10.0.0.0/24;
供应网络:192.168.2.0/24,(使用网卡,以及使用网段可以根据实际情况进行确定);

(3)虚拟网络

  • 供应网络:192.168.2.0/24,ens34,根据实际情况确定;参考launch-instance-networks-provider
    在这里插入图片描述
    在这里插入图片描述
  • 私有网络1:172.16.0.0/24,实例私有局域网;参考launch-instance-networks-selfservice

在这里插入图片描述

在这里插入图片描述

(4)规划概览

主机名管理网络网卡1供应网络网卡2配置
controller10.0.0.11ens33192.168.2.11ens344C8G64G
compute110.0.0.31ens33192.168.2.31ens344C8G64G
compute210.0.0.32ens33192.168.2.32ens344C8G64G
compute310.0.0.33ens33192.168.2.33ens344C8G64G

注:更多节点类型,可以依次递增,但最好完成各类网络的规划。

本教程实际测试为,在后面的教程中以下面的地址为准。

主机名管理网络网卡1供应网络网卡2配置
controller192.168.232.101ens33192.168.2.101ens344C8G64G
compute1192.168.232.111ens33192.168.2.111ens344C8G64G
compute2192.168.232.112ens33192.168.2.112ens344C8G64G
compute3192.168.232.113ens33192.168.2.113ens344C8G64G

二、环境准备

1.基础网络

(1)网卡配置
博客参考:Centos7设置静态IP地址,CentOS7设置静态IP而且还可以上网
配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33

[root@controller ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
# BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
# IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="ea1c227b-1fad-48f0-942f-968d183b3523"
DEVICE="ens33"
ONBOOT="yes"# add follow
BOOTPROTO="static"
IPADDR="192.168.232.101"
NETMASK="255.255.255.0"
GATEWAY="192.168.232.2"
DNS1="1.1.1.1"

(2)网关配置
配置文件:/etc/networks

[root@controller ~]# cat /etc/networks
default 0.0.0.0
loopback 127.0.0.0
link-local 169.254.0.0#add follow
NETWORKING=yes
GATEWAY=192.168.232.2

2.主机名称

(1)文件修改

配置文件/etc/hosts
控制节点

[root@controller ~]# hostnamectl set-hostname controller
echo 192.168.232.101 controller >> /etc/hosts
echo 192.168.232.111 compute1 >> /etc/hosts
echo 192.168.232.112 compute2 >> /etc/hosts
echo 192.168.232.113 compute3 >> /etc/hosts

计算节点1

[root@compute1 ~]# hostnamectl set-hostname compute1
echo 192.168.232.101 controller >> /etc/hosts
echo 192.168.232.111 compute1 >> /etc/hosts
echo 192.168.232.112 compute2 >> /etc/hosts
echo 192.168.232.113 compute3 >> /etc/hosts

计算节点2

[root@compute2 ~]# hostnamectl set-hostname compute2
echo 192.168.232.101 controller >> /etc/hosts
echo 192.168.232.111 compute1 >> /etc/hosts
echo 192.168.232.112 compute2 >> /etc/hosts
echo 192.168.232.113 compute3 >> /etc/hosts

计算节点3

[root@compute3 ~]# hostnamectl set-hostname compute3
echo 192.168.232.101 controller >> /etc/hosts
echo 192.168.232.111 compute1 >> /etc/hosts
echo 192.168.232.112 compute2 >> /etc/hosts
echo 192.168.232.113 compute3 >> /etc/hosts

存储节点(可选),参考官方说明官方environment-networking-storage-cinder
注:
①某些发行版本在/etc/hosts 文件中添加了多余的条目,该条目将实际的主机名解析为另一个回送IP地址,例如127.0.1.1。如果有的话,则必须将其注释或删除,以防止名称解析问题。
②不要删除127.0.0.1条目。
③每一个节点都需要对其他节点进行主机名的解析配置。
主机名修改完成后,退出当前终端,重新登录服务器。

(2)验证连通性

在每一个节点都要进行连通性测试,最后一条ping qq.com,管理网络不一定需要和公用互联网络连通。

ping -c 4 controller
ping -c 4 compute1
ping -c 4 compute2
ping -c 4 compute3
ping -c 4 qq.com

3.免密登录

【可选】

  • 在此之前,需要先进行root密码的设置
  • 以及允许root的ssh远程登陆(一般为permissionrootlogin项)设置为yes,并且重启ssh服务
  • 至少保证控制节点和计算节点,(如果需要配置所有控制和计算节点相互之间的无密码登录,每个节点都 要进行以下操作。)

控制节点计算节点

[root@controller ~]# ssh-keygen -t rsa			#生成公私钥文件,连续回车
[root@controller ~]# ssh-copy-id controller		#将公钥复制到目标机器中,需要输入当前用户为root,对应controller主机的也应是root的密码
[root@controller ~]# ssh controller				#测试登录,然后exit退出测试终端[root@controller ~]# ssh-copy-id compute1 		#将公钥复制到目标机器中,需要输入当前用户为root,对应compute1主机的也应是root的密码
[root@controller ~]# scp -r .ssh compute1:~/ 	#文件复制到compute1,完成相互免密登录。
[root@controller ~]# ssh compute1				#测试登录,然后exit退出测试终端[root@controller ~]# ssh-copy-id compute2 		#将公钥复制到目标机器中,需要输入当前用户为root,对应compute2主机的也应是root的密码
[root@controller ~]# scp -r .ssh compute2:~/ 	#文件复制到compute2,完成相互免密登录。
[root@controller ~]# ssh compute2				#测试登录,然后exit退出测试终端
。。。

4.禁用防火墙

(1)关闭iptables

在CentOS7上面是firewalld服务,停止并且禁止开机启动firewalld.service

systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service
(2)关闭 selinux
setenforce 0
getenforce
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/sysconfig/selinux
grep SELINUX=disabled /etc/sysconfig/selinux

5.yum源配置

(1)新建repo文件

首先移除原系统自带的repo文件,避免和新建的配置文件内容冲突

cd
mkdir ori_repo-config
mv /etc/yum.repos.d/* ./ori_repo-config/
touch /etc/yum.repos.d/CentOS-PrivateLocal.repo
vim /etc/yum.repos.d/CentOS-PrivateLocal.repo

文件内容:/etc/yum.repos.d/CentOS-PrivateLocal.repo

[base]
name=CentOS-$releasever - Base
baseurl=http://192.168.2.111/yumrepository/base/
gpgcheck=0
enabled=1[updates]
name=CentOS-$releasever - Updates
baseurl=http://192.168.2.111/yumrepository/updates/
gpgcheck=0
enabled=1[extras]
name=CentOS-$releasever - Extras
baseurl=http://192.168.2.111/yumrepository/extras/
gpgcheck=0
enabled=1[centos-openstack-train]
name=CentOS-7 - OpenStack train
baseurl=http://192.168.2.111/yumrepository/centos-openstack-train/
gpgcheck=0
enabled=1[centos-qemu-ev]
name=CentOS-$releasever - QEMU EV
baseurl=http://192.168.2.111/yumrepository/centos-qemu-ev/
gpgcheck=0
enabled=1[centos-ceph-nautilus]
name=CentOS-7 - Ceph Nautilus
baseurl=http://192.168.2.111/yumrepository/centos-ceph-nautilus/
gpgcheck=0
enabled=1[centos-nfs-ganesha28]
name=CentOS-7 - NFS Ganesha 2.8
baseurl=http://192.168.2.111/yumrepository/centos-nfs-ganesha28/
gpgcheck=0
enabled=1
(2)更新软件源
[root@controller ~]# yum clean all
[root@controller ~]# yum makecache
[root@controller ~]# yum repolist
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                 repo name                     status
base                    CentOS-7 - Base               10097 
centos-ceph-nautilus    CentOS-7 - Ceph Nautilus      224 
centos-nfs-ganesha28    CentOS-7 - NFS Ganesha 2.8    140 
centos-openstack-train  CentOS-7 - OpenStack train    2323 
centos-qemu-ev          CentOS-7 - QEMU EV            87 
extras                  CentOS-7 - Extras             341 
updates                 CentOS-7 - Updates            1787 
repolist: 14999
[root@controller ~]# 

三、系统基础软件安装

1.Linux工具

yum install -y lsof vim net-tools wget git 

2.NTP时间同步

(1)安装软件

yum  -y install chrony
vim /etc/chrony.conf

(2)编辑chrony.conf文件,添加以下内容。

server controller iburst

(3)重新启动NTP服务,并配置开机启动项:

systemctl restart chronyd.service
systemctl status chronyd.service
systemctl enable chronyd.service
systemctl list-unit-files |grep chronyd.service

(4)设置时区,同步时间

timedatectl set-timezone Asia/Shanghai
chronyc sources
timedatectl status

四、OpenStack基础软件安装

1、(省略)OpenStack仓库安装

【所有节点】

在进行本地源配置的时候已经将本地仓库中的相关yum源配置其中,故此步骤周可省略。
官方安装指南environment-packages-rdo

  • On CentOS, the extras repository provides the RPM that enables the OpenStack repository.
  • CentOS includes the extras repository by default, so you can simply install the package to enable the OpenStack repository.
yum clean all
yum makecache
yum repolist
yum update -y #可选
yum install centos-release-openstack-train -y
yum clean all
yum makecache

2.OpenStack客户端相关软件

yum install python-openstackclient openstack-selinux -y
yum install openstack-utils -y

openstack-utils 用于OpenStack配置文件的快速配置。

五、完成计算节点环境准备

至此,计算节点compute1就完成基础环境的配置,使用VMware虚拟机的话,现在可以关机做快照。

这篇关于OpenStack离线Train版安装系列—2计算节点-环境准备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147923

相关文章

Python如何计算两个不同类型列表的相似度

《Python如何计算两个不同类型列表的相似度》在编程中,经常需要比较两个列表的相似度,尤其是当这两个列表包含不同类型的元素时,下面小编就来讲讲如何使用Python计算两个不同类型列表的相似度吧... 目录摘要引言数字类型相似度欧几里得距离曼哈顿距离字符串类型相似度Levenshtein距离Jaccard相

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑

在 Windows 上安装 DeepSeek 的完整指南(最新推荐)

《在Windows上安装DeepSeek的完整指南(最新推荐)》在Windows上安装DeepSeek的完整指南,包括下载和安装Ollama、下载DeepSeekRXNUMX模型、运行Deep... 目录在www.chinasem.cn Windows 上安装 DeepSeek 的完整指南步骤 1:下载并安装

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如