一、搭建
(一)配置推荐
系统 | 镜像 | 内存 | 储存 |
---|---|---|---|
Linux | centos7.6 | 16G+ | 100G+ |
(二)前期准备
1.开启虚拟化
2.关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
3.关闭NetworkManager
systemctl stop NetworkManager && systemctl disable NetworkManager
4.禁用SELINUX
setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
5.修改主机名
修改后重启生效。
hostnamectl set-hostname HYX-OS-01
6.配置主机映射
cat >>/etc/hosts<<eof
121.121.0.91 HYX-OS-03
eof
(三)基础配置
1.更新yum源
1.1备份
cd /etc/yum.repos.d/
mkdir back
mv ./C* back/
1.2下载配置文件
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
1.3清理并建立缓存
yum clean all && yum makecache
1.4更新
遇到跑不动的请更换网络。
yum -y update
2.时间同步
2.1创建crontab任务
crontab -e
2.2添加定时任务
*/20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1
2.3代码解释
这是一个使用crontab
命令设置的定时任务示例。它的含义是每20分钟执行一次/usr/sbin/ntpdate pool.ntp.org
命令,并将输出结果重定向到/dev/null
以丢弃标准输出和错误输出。
更具体地解释如下:
*/20 * * * *
是cron时间表达式,表示每20分钟执行一次任务。/usr/sbin/ntpdate pool.ntp.org
是要执行的命令,它会使用ntpdate工具从pool.ntp.org服务器同步系统时间。> /dev/null 2>&1
是重定向语法,将标准输出和错误输出都重定向到/dev/null设备,即丢弃输出。
通过将这个定时任务添加到用户的crontab中,系统会每20分钟自动执行一次命令来同步系统时间。
请注意,具体命令的路径(例如/usr/sbin/ntpdate
)和服务器地址(例如pool.ntp.org
)可能因系统配置而有所不同。确保你设置正确的路径和服务器地址,以便任务可以正常运行。
3.安装opensack
3.1版本选择
三个版本,任选其一,推荐第一个。
# openstack-train版本
yum -y install centos-release-openstack-train.noarch
# openstack queens版本
yum -y install centos-release-openstack-queens
# openstack rocky版本
um -y install centos-release-openstack-rocky
3.2安装依赖
yum -y install openstack-packstack
3.3快速部署
packstack --allinone
packstack --allinone
是一个命令,用于在OpenStack环境中快速部署一个"all-in-one"配置,即在一台服务器上安装并配置OpenStack的所有组件。"all-in-one"配置通常用于开发、测试或学习目的。
具体来说,packstack
是一个由Red Hat提供的用于自动化OpenStack部署的工具。通过使用packstack
命令,你可以指定不同的参数和选项来定制OpenStack的安装和配置方式。
而--allinone
选项则指示packstack
在单个节点上安装和配置具有所有OpenStack服务的"all-in-one"环境。这意味着OpenStack的各个组件,如Nova、Neutron、Glance等将被安装在同一台服务器上,用于模拟小规模的OpenStack环境。
在执行packstack --allinone
命令之前,你需要确保满足安装OpenStack所需的系统要求,并已经安装了必要的依赖软件包。
值得一提的是,packstack
命令可能会有不同的参数和选项可供使用,具体取决于你的OpenStack版本和配置需求。建议查阅相关文档或执行packstack --help
命令,以获取更多关于packstack
命令的详细信息和使用示例。
(四)WEB端
1.访问地址
2.登陆
2.1查看密码
3.修改密码
二、使用
(一)镜像管理
1.镜像下载地址
# centos7
http://cloud.centos.org/centos/7/images/
# ubuntu
http://cloud-images.ubuntu.com/focal/20220213/
# windows
https://cloudbase.it/windows-cloud-images/#download
2.上传镜像
(二)创建网络
1.删除路由
2.删除网络
3.创建网桥
vi /etc/sysconfig/network-scripts/ifcfg-br-ex
添加下面的内容,请注意要修改的位置。
DEVICE=br-ex
DEVICETYPE=OVS
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=121.121.0.91 # 虚拟机IP地址,请修改。
PREFIX=24
GATEWAY=121.121.0.1 # 虚拟机网关,请修改。
DNS1=114.114.114.114
ONBOOT=yes
4.连接网桥
4.1备份ens33网络
cp ifcfg-ens33 ifcfg-ens33.bak
4.2修改ens33网络
请清空所有内容,可使用“%d”来清空,如若不会的话请将ifcfg-ens33删除后再次创建。
vi ifcfg-ens33
添加下面的内容,请注意要修改的位置。
DEVICE=ens33
TYPE=OVSPort
DEVICETYPE=OVS
OVS_BRIDGE=br-ex
ONBOOT=yes
HWADDR=00:0C:29:FA:D6:12 # MAC地址,请修改,MAC地址位置如下图所示。
5.重启网络
systemctl restart network
6.验证配置
如果重启网络后远程连接工具失去连接,请去VMware里面使用ip addr查看,如与上图不一样,则配置失败,请在VMware里面参照步骤4进行修改。
7.创建网络
下面是另外一台虚拟机做的,请不要在意IP地址。
7.1创建公网
7.2创建私网
8.创建路由
(三)创建实例
1.公网实例
1.1创建
#!/bin/bash
passwd root<<EOF
123456
123456
EOF
1.2配置安全组
1.3验证实例
宿主机ping实例的IP地址
实例ping外网
1.4配置远程连接
在实例里面输入下面的代码
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
systemctl restart sshd
用命令验证
在远程工具里面验证
2.私网实例
2.1创建
这里与公网实例类似,只有网络那里不一样。
#!/bin/bash
passwd root<<EOF
123456
123456
EOF
2.2绑定浮动IP
2.3验证实例
宿主机验证
外网验证
2.4配置远程连接
由于配置出错,造成实例挂了,所有下面的IP与上面的不一样,但殊途同归。
在实例里面输入下面的代码
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
systemctl restart sshd
用命令验证
在远程工具里面验证
评论区