本文主要介绍基于CentOS的OpenStack环境的部署(OpenStack安装)。这篇文章很详细,对你的学习或者工作有一定的参考价值。有需要的朋友可以参考一下。
效果显示:
准备环境控制器节点:
6GB
4H
60GB/30GB/30GB
计算节点
6GB
4H
60G/60G
管理节点(ceph管理节点)
2GB
4H
60GB/6GB
OpenStack简介
OpenStack是一个开源的云平台管理项目,可用于搭建公共或私有云平台,提供基础设施和服务(Iaas)的解决方案。OpenStack是云操作系统,可以通过数据中心控制计算、存储、网络等资源池。OpenStack涵盖网络、虚拟化、操作系统、服务器等各个方面。虚拟机资源可以通过OpenStack启动、分配、管理,所有管理都可以通过前端接口完成。
OpenStack核心组件Nova
管理服务,管理虚拟机实例的全生命周期,负责虚拟机的创建、启动、关闭、挂起、暂停、调整、迁移、重启、销毁、资源分配等操作。它通过API对外提供服务,使用KeyStone进行认证,使用Horizon作为其管理接口,使用Glance提供其镜像,使Nova可以管理计算资源、网络和认证。
中子
网络管理服务,为多租户环境中的每个租户提供独立的网络环境。Neutron为整个OpenStack环境提供网络支持。您可以定义网络、子节点、路由器,配置DHCP、DNS、负载平衡、L3服务。网络支持GRE、VLAN等。并且支持很多流行的网络管理插件,比如OpenvSwitch。
煤渣
块存储服务,支持不同的存储后端,包括ceph、glusterfs等。它是存储虚拟机和虚拟机使用的数据的基础。Cinder提供对块存储设备的访问和管理。对于OpenStack主机,存储以块设备的形式出现,ISCSI、NFS、ceph或其他一些特殊协议作为后端连接;Cinder的界面规定了一系列独立的功能,包括创建卷、删除卷、挂载卷等基本功能,以及扩展卷、快照、从VM镜像克隆等一些高级功能。
迅速发生的
对象存储服务,为OpenStack集群提供跨节点的分布式大规模对象存储服务,通过RESTful接口存储和检索非结构化数据对象。这是一种高度容错和可扩展的存储架构。对象存储是将相应的数据存储为二进制对象而不是文件。一般来说,一条指令就可以存储或检索整个对象。
拱顶石
认证管理服务是OpenStack框架中的一个模块,负责管理认证、服务规则和服务令牌功能。它管理域、项目、用户、组和角色。MySQL作为统一数据库。用户在访问资源时需要验证身份和权限,在执行服务操作时也需要进行权限检测。所有这些事情都需要通过KeyStone来处理。OpenStack服务通过Keystone注册其端点(服务访问的URL)。服务之间的任何相互调用都需要由Keystone进行身份验证,以在调用之前获取目标的端点。
闪光
镜像管理服务提供对部署虚拟机时可以提供的镜像的管理,包括搜索、注册、检索、导入、格式化和制作相应的模板。它支持多种虚拟机镜像格式,并具有创建、删除和编辑镜像基本信息的功能。Glance提供了RESTfulAPI,可以查询虚拟机的元数据并获取。Glance可以将镜像保存到各种后端存储,比如简单的文件存储或对象。
地平线
用户交互界面是OpenStack中各种服务的Web管理入口,用于简化用户对服务的操作,如启动实例、分配IP地址、配置访问控制等。
安装CentOS
yum安装vim
在cmd窗口中输入以下命令查看网段
ipconfig/全部
修改网卡信息
vim/etc/sys config/network-scripts/if CFG-ens 33
类型=以太网
PROXY _ METHOD=无
BROWSER _ ONLY=否
BOOTPROTO=static
DEFROUTE=是
IPV4 _失败_致命=否
IPV6INIT=是
IPV6 _ AUTOCONF=是
IPV6 _ DEFROUTE=是
IPV6 _失败_致命=否
IPV6 _ ADDR _ GEN _ MODE=稳定-隐私
NAME=ens33
设备=ens33
ONBOOT=是
IPADDR=192.168.12.18
前缀=24
网关=192.168.12.1
DNS1=192.168.111.2
重启网络服务
服务网络重启
控制器
192.168.12.18(提供浮动IP,出网地址)
192.168.12.118(内网之间通信)
计算
192.168.12.140(提供浮动IP,出网地址)
192.168.12.240(内网之间通信)
# 立即重启
立即关机
初始化各节点
yum-y install wget net-tools NFS-utils lrzsz gcc gcc-c make cmake libxml 2-devel OpenSSL-devel curl-devel unzip sudo NTP libaio-devel vim ncurses-devel autoconf automake zlib-devel python-devel epel-release lrzsz OpenSSH-server
关闭防火墙、网络管理器、iptables、selinux(各个节点操作)
系统细胞毒性T淋巴细胞(cytotoxic lymphocyte的缩写)停止防火墙系统细胞毒性T淋巴细胞(cytotoxic lymphocyte的缩写)禁用防火墙系统细胞毒性T淋巴细胞(cytotoxic lymphocyte的缩写)停止网络管理器系统细胞毒性T淋巴细胞(cytotoxic lymphocyte的缩写)禁用网络管理器
系统停止iptables系统禁用iptables
修改selinux
vim /etc/sysconfig/selinux
SELINUX=禁用
修改主机
vim /etc/hosts
192.168.12.118控制器
计算
修改主机名
主机名CTL集-主机名控制器
主机名CTL集-主机名计算机
时间同步
NTP日期cn.pool.ntp.org
配置无密码登陆,各个节点操作
ssh-keygen -t rsa
#一直回车即可
ssh-copy-id -i .ssh/id_rsa.pub控制器
ssh-copy-id -i .ssh/id_rsa.pub计算机
用xftp上传openstack离线软件包到根目录下(在控制器和计算节点操作)
在根下创建一个目录openstack,然后把软件包解压到这个目录下
mkdir/root/open stack CD/root/open stack tar zxvf/root/open stack _ n . tar。地面零点
把openstack目录整体移动到/下(控制器和计算机节点操作)
mv openstack /
重新配置妙的源(控制器和计算机节点都操作)
cd /etc/yum.repos.d/
mkdir bak
mv CentOS-* bak/
mv epel* bak/
cp bak/CentOS-Base.repo ./
生成一个新的openstack的妙的源
目录EOF/etc/yum。回购。d/开放堆栈。被卖方收回的汽车
[openstack]
启用=1
gpgcheck=0
baseurl=file:///openstack
文件结束
清缓存
yum makecache
openstack应答文件安装(控制器节点操作)
yum安装centos-release-open stack-Newton-y
cd /etc/yum.repos.d
mv * .回购bak/
cp bak/openstack.repo ./
cp bak/CentOS-Base.repo ./
清缓存
yum makecache
妙的安装openstack-packstack -y
CD/根目录
pack stack-gen-answer-file=open stack。文本文件(textfile)
结束后会生成一个应答文件openstack.txt
修改openstack.txt文件
修改的内容如下
配置默认密码=123456
配置_ SWIFT _安装=n
配置_NAGIOS_INSTALL=n
配置煤渣卷大小=10G
配置供应演示=n
CONFIG_LBAAS_INSTALL=y
配置_中子_FWAAS=y
配置_中子_VPNAAS=y
配置控制器主机=192.168.12.118
配置计算主机=192.168.12.240
配置网络主机=192.168.12.240
基于应答文件安装组件
pack stack-answer-file=打开堆栈。文本文件(textfile)
安装过程需要查看iptables状态,在控制器和计算机节点
系统状态表
如果发现iptables处于活跃的状态,需要停掉
系统停止iptables
看到如下说明安装成功
安装成功完成
启动兔子q的管理界面(控制器节点操作)
兔子q插件启用rabbitmq _管理
在浏览器访问
192.168.124.200:15672
账号:客人
密码:客人
登陆openstack的dashboad界面
在浏览器输入:
192.168.124.200
账号:管理
密码:
获取密码
CD/根目录
卡特彼勒钥匙rc_admin
KeyStone配置优化
在controller节点操作
修改keystone.conf
vim /etc/keystone/keystone.conf
在系统默认值字段下面添加如下一行
内存缓存_服务器=192。168 .12 .118:11211
重启服务
系统ctl重新启动超文本协议服务
如果OpenStack可以正常访问则代表配置成功
glance配置优化
修改glance-api.conf
vim /etc/glance/glance-api.conf
在顶部添加
内存缓存_服务器=192。168 .12 .118:11211
修改glance-registry.conf
vim/etc/glance/glance-注册表。会议
在顶部添加
内存缓存_服务器=192。168 .12 .118:11211
重启服务
系统ctl重启openstack-glance-api
系统ctl重启openstack-glance-registry
新星配置优化在控制器节点修改
修改nova.conf
vim /etc/nova/nova.conf
在顶部添加memcahce缓存
内存缓存_服务器=192。168 .12 .118:11211
原来是只有地址,没有超文本传送协议(超文本传输协议的缩写)协议,需要加上超文本传送协议(超文本传输协议的缩写)协议
API _ servers=http://192。168 .12 .118:9292
在第一行[默认]下面加上这行
transport _ URL=rabbit://guest:guest @ 192。168 .12 .118
原来的互联网协议(互联网协议的缩写)改成这个,并且打开注释
my_ip=192.168.12.118
原来是0.0.0.0,现在改成这个
vncserver _ listen=192。168 .12 .118
原来是主机名,改成这个主机互联网协议(互联网协议)
vncserver _ proxy客户端地址=192。168 .12 .118
上面修改好之后重新启动服务
系统ctl重新启动openstack-nova-api.service
打开堆栈-nova-控制台验证。服务开放堆栈-nova-调度程序。服务
开放式堆栈-新星-指挥。s:服务开放栈-nova-novncproxy。服务
在计算节点修改
修改配置文件nova.conf
vim /etc/nova/nova.conf
在第一行[默认]字段加如下一行
内存缓存_服务器=192。168 .12 .118:11211
这行注释打开,变成这个互联网协议(互联网协议的缩写)地址
transport _ URL=rabbit://guest:guest @ 192。168 .12 .118
这行注释打开,ip变成这个主机互联网协议(互联网协议的缩写)
API _ servers=http://192。168 .12 .118:9292
这行注释打开,变成这个互联网协议(互联网协议的缩写)地址
my_ip=192.168.12.240
这行注释打开,变成这个互联网协议(互联网协议的缩写)地址
vncserver _ proxy客户端地址=192。168 .12 .240
这行注释打开,变成这个互联网协议(互联网协议的缩写)地址
novncproxy _ base _ URL=http://192。168 .12 .118:6080/VNC汽车城。超文本标记语言
这行注释打开
虚拟类型=qemu
上面修好好了之后重新启动服务
系统CTL启用libvirtd。服务开放堆栈。服务
系统ctl重新启动libvirtd。服务开放堆栈。服务
查看日志,没有报错
cat/var/log/nova/nova-compute。原木
启动之后在控制器节点查看日志
cat /var/log/nova/nova-api.log
如果没有报错即可
Neutron配置优化
在controller节点操作
修改配置文件中子网站
vim/etc/中子/中子。会议
新增加一行
内存缓存_服务器=192。168 .12 .118:11211
找到传输url,新增加一行(消息队列兔子地址在控制器节点上)
transport _ URL=rabbit://guest:guest @ 192。168 .12 .118
找到lock_path,改为绝对路径
lock_path=/var/lib/neutron/tmp
修改ml2_conf.ini
vim/etc/neutron/plugins/ml2/ml2 _ conf初始化设置文件的后缀名
修改vni _范围
vni_ranges=10:10000
上面两个文件修改好之后重启服务
重启中子服务器
新开一个端口查看日志,没有报错即可
tail-f/var/log/中子/服务器。原木
在计算节点操作
创建一个桥接网卡,桥接到能够访问外网的那个网卡,也就是ens33
CD/etc/sys配置/网络脚本
mkdir bak
cp ifcfg-ens33 bak/
vim ifcfg-br-ex
复制内容到ifcfg-br-ex
设备=br-ex
BOOTPROTO=static
ONBOOT=是
TYPE=OVSBridge
DEVICETYPE=ovs
USERCTL=是
PEERDNS=是
IPV6INIT=否
IPADDR=192.168.12.140
网络掩码=255.255.255.0
DNS1=192.168.111.2
网关=192.168.12.1
vim ifcfg-ens33
将原有内容删除,替换为如下内容
# 设备名
设备=ens33
# 是否开启开机自启
ONBOOT=是
TYPE=OVSPort
DEVICETYPE=ovs
#桥接到哪个网卡上
OVS桥=br-ex
重启网卡
服务网络重启
修改配置文件neutron.conf
vim/etc/中子/中子。会议
新增加一行配置文件
transport _ URL=rabbit://guest:guest @ 192。168 .12 .118
新增加一行
memcached _ servers=192。168 .12 .118:11211
原来的路径变成这个
lock_path=/var/lib/neutron/tmp
修改三层的和浮动ip相关的配置文件
镉/etc/中子
vim l3_agent.ini
这行注释去掉
ovs_integration_bridge=br-int
这行注释打开
可用性区域=新星
修改配置文件metadata_agent.ini
精力元数据_代理。初始化设置文件的后缀名
这行注释打开
nova_metadata_port=8775
这行注释打开
新星_元数据_协议=http
新增加一行
memcached _ servers=192。168 .12 .118:11211
修改配置文件dhcp_agent.ini
vim dhcp_agent.ini
这行注释打开
ovs_integration_bridge=br-int
原来是假的,需要变成真实的
启用_元数据_网络=真
新增加一行
dhcp_domain=test.localdomain
原来的注释打开,修改成外网的十进位计数制地址
DNS masq _ DNS _ servers=192。168 .111 .2
这行注释打开
dnsmasq_lease_max=16777216
这行注释打开
可用性区域=新星
完成上述更改后,请重新启动该服务。
system CTL restart neutron-ovs-clean up . service neutron-openv switch-agent . service neutron-metering-agent . service neutron-metadata-agent . service neutron-l baas v2-agent . service neutron-L3-agent . service neutron-DHCP-agent . service
关于基于CentOS的OpenStack环境部署(OpenStack安装)的这篇文章到此为止。有关CentOS的OpenStack环境部署的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!