基于openstack开发的云计算平台是,openstack是一个开源的云操作系统
内容openstack 1、基础准备1、硬件准备2、硬件信息2、软件环境1、主机网络2、网络时间协议(NTP) 3、openstack包4的官方文档链接是什么?
什么是openstack?Openstack是一个云操作系统,用于控制整个数据中心的大量计算、存储和网络资源。所有这些都是使用具有通用认证机制的api来管理和配置的。此外,还提供了管理员可以控制的仪表板和用户可以通过web界面提供资源的仪表板。除了标准的服务基础设施功能,其他组件还提供组织、故障管理和服务管理等服务,以确保用户APP应用的高可用性。目的是建立一个类似于AlibabaCloud的云计算平台,但它是一个具有基本功能的平台,还需要添加其他组件来扩展更多的功能。正式文档链接
官方文档链接:3360https://docs . open stack.org/MIT aka/zh _ cn/install-guide-RDO/overview . html
1.基础准备1。硬件准备由于实际条件的限制,我们部署的是虚拟机,而不是实际硬件。
在此示例体系结构中,至少需要两个(主机)节点(术语:虚拟机虚拟机(VM)或实例)来启动基本服务。在块存储服务和对象存储服务、认证服务、镜像服务、计算服务的管理、网络服务的管理、多个网络代理和仪表板等服务中,还必须包括SQL数据库、term: message queue和ANNTP等支持服务。在计算节点上运行部分虚拟机管理程序,以管理计算服务中的实例。默认情况下,计算服务使用KVM。您可以部署一个或多个计算节点。每个计算节点至少需要两个网卡。一个节点可以运行一些块存储、对象存储、编排和遥测服务。节点的内存至少要4G,双网卡,要添加的网卡模式必须是主机路径跟踪模式。
2.硬件信息大多数环境包括认证、镜像、计算、至少一个网络服务和仪表板,但目标存储服务也可以独立运行。
每个节点必须包含一个具有管理员权限的帐户。您可以使用root或sudo工具来执行这些命令。
要获得最佳性能,环境中必须满足ref:figure-hwreqs的硬件要求或更高的要求。
以下最低要求支持概念验证环境,并使用核心服务和多个:term:CirrOS实例:
-控制节点:1个处理器、4 GB内存和10 GB存储
-计算节点:1个处理器、2 GB内存和10 GB存储
由于Openstack服务和虚拟机的数量正常,因此环境满足或超过了获得最佳性能的基本硬件要求。如果在添加更多服务或虚拟机后性能下降,请考虑向环境添加硬件资源。
二、软件环境1。主机网络配置控制节点网络的第一网卡的一般配置。第二块网卡先改变网卡的命名形式(保持与第一块网卡相同的命名形式,未知错误IP[root @ foundation ~]# CD/boot/grub 2/[root @ foundation grub 2]# lsgrubev[root @ foundation grub 2]# Vim grub不需要分配网卡。命名格式为eth格式[root @ server 1 ~]# CD/etc/sys config/network-scripts/[root @ server 1 network-]CPI fg-eth 0 ifcfg-et h1[root @ server 1 network-scripts]# viifcfg-et h1 bootprot=none device=et h1 on boot=yes[rot]enable IP addr # Configure域名解析:将节点的主机名设置为controller,将计算节点设置为compute1,将存储节点设置为block1[ root @ server 1网络脚本] # vim。
2.NTP) NTP)使用chrony来确保不同节点之间的时间同步。
#真机设置[root @ foundation desktop]# vim/etc/chrony . confiserverntp 1 . aliyun . comiburstserverntp 2 . aliyun . comiburstster
-现在chronoyd # #设置机器启动,立即启动[root @ foundation desktop]# chronoycsources-v # #检查时间同步状态。
[root @ controller ~]# yum install chrony-y[root @ controller ~]# vim/etc/chrony。会议服务器192。168 .0 .100 I burst[root @ controller ~]# system CTL enable-now chrony[root @ controller ~]# chrony c sources-V
3.openstack包下载资源包
将资源包放在街头流氓的默认发布目录下配置软件仓库,路径为刚才资源包所放置的位置在主机上升级包安装OpenStack客户端红帽企业版和CentOS默认启用了SELinux .安装openstack-selinux软件包以便自动管理OpenStack服务的安全策略(这里我们禁用了防火墙和防火墙,因此这一步可以不做)[root @ controller ~]# CD/etc/yum。回购。d[root @ controller yum。回购。d]# vim开放堆栈。repo[root @ controller yum。回购。d]# cat开放堆栈。repo[open stack]name=mitakabaseurl=3358192。168 .0 .100/mitakapgcheck=0[root @ controller yum。回购。d]# yum升级#主机上升级包【root @ controller yum。回购。好吃的安装python-openstackclient -y #装OpenStack客户端将三鹰放在共享发布目录下
4.结构化查询语言数据库大多数OpenStack服务使用结构化查询语言数据库来存储信息。典型地,数据库运行在控制节点上。指南中的步骤依据不同的发行版使用MariaDB或MySQL。
【root @ controller yum。回购。d]# yum安装Maria db Maria d b-server python 2-PyMySQL-y[root @ controller yum。回购。d]# CD/etc/my。CNF。d/[root @ controller my。CNF。d]# lsauth _ gssapi。CNF客户。CNF启用_加密。预设玛丽亚数据库服务器。CNF MySQL-客户端。CNF到库德布。CNF[root @ controller my。CNF。d]# vim开放堆栈。CNF[根@控制器设置绑定地址值为控制节点的管理网络互联网协议(互联网协议)地址以使得其它节点可以通过管理网络访问数据库default-storage-engine=innodb innodb _ file _ per _ tablemax _ connections=4096 collation-server=utf8 _ general _ cicharacter-set-server=utf8 #启动数据库服务,并将其配置为开机自启,运行mysql _安全_安装脚本安全安装数据库【root @ controller我的。cn f . d]# system CTL enable-now Maria db。服务创建了从/etc/systemd/system/多用户。目标。wants/Maria db。服务到/usr/lib/systemd/system/Maria db。服务的符号链接. root @ controller my。cn f . d]# MySQL _ secure _ installation输入根的当前密码(如果没有,请输入):好吧,成功使用密码,继续.设置根密码可以确保没有人能够在没有适当授权的情况下登录到马里亚布鲁特用户。设置根密码?[Y/n] YNew密码:#密码设置为韦斯特奥斯雷重新输入新密码:密码更新成功!重新加载权限表.成功!默认情况下,MariaDB安装有一个匿名用户,允许任何人登录玛丽雅迪,而不必为他们创建用户帐户。这只是为了测试,并使安装更加顺利。您应该在进入生产环境之前删除它们。删除匿名用户?[是/否]是.成功!通常,应该只允许根从"本地主机"连接。这确保了别人无法从网络上猜测到根密码。不允许远程根登录?[是/否]是.成功!默认情况下,MariaDB附带一个名为“测试”的数据库,任何人都可以访问。这也仅用于测试,应该在进入生产环境之前删除。是否删除测试数据库并访问它?[Y/n] Y -下降测试数据库.成功!-删除测试数据库的权限.成功!重新加载权限表将确保到目前为止所做的所有更改会立即生效。现在重新加载权限表吗?[是/否]是.成功!清理.全部完成!如果您已经完成了上述所有步骤,那么您的数据库安装现在应该是安全的了。感谢使用MariaDB!
5.消息队列OpenStack使用信息排队协调操作和各服务的状态信息。消息队列服务一般运行在控制节点上。OpenStack支持好几种消息队列服务包括RabbitMQ,Qpid,和ZeroMQ。不过,大多数发行版本的OpenStack包支持特定的消息队列服务。
【root @ controller我的。cn f . d]# yum安装兔子MQ-server-y[root @ controller my。cn f . d]#系统CTL启用-现在兔子MQ-服务器。服务# #启动消息队列服务并将其配置为随系统启动【root @ controller我的。cn f . d]# rabbit MQ CTL add _ user open stack open stack # #添加云计算用户,密码最好和用户名保持一致正在创建用户" openstack ".【root @ controller我的。CNF。d]# rabbit mqctl set _ permissions打开堆栈.* .* .* ##给云计算用户配置写和读权限正在为vhost"/"中的用户" openstack "设置权限.[root @ controller ~]# rabbit MQ-plugins list[root @ controller ~]# rabbit MQ-plugins enable rabbit MQ _ management[root @ controller ~]# netstat-antlp # #查看端口,通过15672端口可以访问网图形化界面[root @ controller ~]# rabbit mqctl list _ users列出用户.open stack[]guest[administrator][root @ controller ~]# rabbit MQ CTL list _ user _ permissions开放堆栈列出用户"开放堆栈"的权限./.*.*.*[root @ controller ~]# rabbitmqctl authenticate _ user open stack open stack认证用户开放堆栈.成功
6.memcached认证服务认证缓存使用Memcached缓存令牌。缓存服务迷因缓存运行在控制节点。在生产部署中,我们推荐联合启用防火墙、认证和加密保证它的安全。
[root @ controller ~]# yum install memcached python-memcached-y[root @ controller ~]# vim/etc/sys config/memcached[root @ controller ~]# cat/etc/sys config/memcached port= 11211 USER= memcached maxconn= 1024 CACHESIZE= 64 # OPTIONS=-l 127。0 .0 .1,1 ##注释这一行,表示允许所有网段(公网)访问[root @ controller ~]# system CTL enable-now memcached。服务创建的符号链接从/etc/systemd/system/多用户。目标。wants/memcached。服务到/usr/lib/systemd/system/memcached。服务。[root @ controller ~]# netstat-ant ulp grep:11211 # # memcache 11211端口开启TCP 0 0 0。0 .0 .0:11211 0 .0 .0 .0:*列出EN 6524/memcached TCP 6 0 0:11211:*列出EN 6524/memcached UDP 0 0。0 .0:11211 0 .0 .0 .0:* 6524/memcached UDP 60:11211:* 6524/memcached