1.OpenStack示例的架构介绍
1.1 各节点介绍
(1)控制节点(controller)
控制节点(controller)上运行身份服务,镜像服务,计算节点管理,网络管理,各种网络代理和仪表板。它还包括支持服务,如SQL数据库,消息队列和NTP。
可选地,控制器节点运行块存储,对象存储,编排和遥测服务的部分。
注:计算节点上需要至少配置两块网卡。
(2)计算节点(Nova)
计算节点运行操作实例的 计算部分。默认情况下使用 :`KVM 或QUME作为hypervisor。计算节点同样运行网络服务代理,用来连接实例到虚拟网络,通过:security groups 为实例提供防火墙服务。instances via .
注:可以部署超过一个计算节点。但每个结算节点至少需要两块网卡。
(3)块设备存储(Cinder)
可选的块存储节点上包含了磁盘,块存储服务和共享文件系统会向实例提供这些磁盘。
为了简单起见,计算节点和本节点之间的服务流量使用管理网络。生产环境中应该部署一个单独的存储网络以增强性能和安全。
注:可以部署超过一个块存储节点。但每个块存储节点要求至少一块网卡。
(4)对象存储
可选的对象存储节点包含了磁盘。对象存储服务用这些磁盘来存储账号,容器和对象。
为了简单起见,计算节点和本节点之间的服务流量使用管理网络。生产环境中应该部署一个单独的存储网络以增强性能和安全。
注:这个服务要求两个节点。每个节点要求最少一块网卡。你可以部署超过两个对象存储节点。
2.操作系统环境
2.1 系统硬件架构
这里我们的云环境选用在centOS7.6 虚拟机,采用单机最小实例进行部署,云平台环境包含:1台控制节点,1台计算节点,1台块存储节点。详情配置如下:
控制节点:controller:
IP:192.168.164.128
hostname&hosts:likeadmin
mem:4G
disk:30G
计算加点:Nova:
IP:192.168.164.129
hostname&hosts:likenode
mem:2G
disk:20G
块存储节点:cinder:
IP:192.168.164.136
hostname&hosts:likeblock
mem:1G
disk:10G
由于Openstack服务数量以及虚拟机数量的增加,为了获得最好的性能,我们推荐你的环境满足或者超过基本的硬件需求。如果在增加了更多的服务或者虚拟机后性能下降,请考虑为你的环境增加硬件资源。
为了避免混乱和为OpenStack提供更多资源,我们推荐你最小化安装你的Linux发行版。同时,你必须在每个节点安装你的发行版的64位版本。
每个节点配置一个磁盘分区满足大多数的基本安装。但是,对于有额外服务如块存储服务的,你应该考虑采用 :Logical Volume Manager (LVM)`与可选服务比如块存储一起安装。
对于第一次安装和测试目的,很多用户选择使用 :term:`virtual machine (VM)`作为主机。使用虚拟机的主要好处有一下几点:
(1)一台物理服务器可以支持多个节点,每个节点几乎可以使用任意数目的网络接口。
(2)在安装过程中定期进行“快照”并且在遇到问题时可以“回滚”到上一个可工作配置的能力。
(3)但是,虚拟机会降低您实例的性能,特别是如果您的 hypervisor 和/或 进程缺少硬件加速的嵌套虚拟机支持时。
2.2 操作系统环境配置
2.2.1 节点网卡配置
(1)配置网络接口
将控制节点(controller)第一个网卡配置为管理网络接口:
IP 地址: 192.168.164.128
子网掩码: 255.255.255.0 (or /24)
默认网关:192.168.164.2
将计算节点(Nova)第一个网卡配置为管理网络接口:
IP 地址: 192.168.164.129
子网掩码: 255.255.255.0 (or /24)
默认网关:192.168.164.2
块存储节点(cinder)第一个网卡配置为管理网络接口:
IP 地址: 192.168.164.136
子网掩码: 255.255.255.0 (or /24)
默认网关:192.168.164.2
提供者网络接口使用一个特殊的配置,不分配给它IP地址。配置第二块网卡作为提供者网络:
将其中的 ``INTERFACE_NAME``替换为实际的接口名称。例如,eth1 或者*ens224*。
编辑网卡配置文件``/etc/sysconfig/network-scripts/ifcfg-ens33``确保该文件内含以下内容:
不要改变 键``HWADDR`` 和
UUID
。DEVICE=INTERFACE_NAME TYPE=Ethernet ONBOOT="yes" BOOTPROTO="none"
重启系统以激活修改。
(2)配置名称解析
1.设置节点主机名为 likeadmin
。
若你的操作系统为:Linux 7 版本
可使用:systemctl hostname-set likeadmin 修改主机hostname,此处hostname为:likeadmin
2.编辑 /etc/hosts
文件,添加主机解析名,已确保包含以下内容:
注:192.168.164.128 likeadmin为控制节点,192.168.164.129 likenode为计算节点,192.168.164.136 likeblock为块存储节点:
[root@likeadmin ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.164.128 likeadmin
192.168.164.129 likenode
192.168.164.136 likeblock
(3)验证连通性
采用互ping的方式测试连通性,在一台主机上测试,如:
测试ping likenode节点:ping -c 4 likenode
测试ping openstack.org官网# ping -c 4 openstack.org
PING openstack.org (174.143.194.225) 56(84) bytes of data.
64 bytes from 174.143.194.225: icmp_seq=1 ttl=54 time=18.3 ms 64 bytes from 174.143.194.225: icmp_seq=2 ttl=54 time=17.5 ms 64 bytes from 174.143.194.225: icmp_seq=3 ttl=54 time=17.5 ms 64 bytes from 174.143.194.225: icmp_seq=4 ttl=54 time=17.4 ms --- openstack.org ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3022ms rtt min/avg/max/mdev = 17.489/17.715/18.346/0.364 ms
2.3 网络时间协议(NTP)
你需要安装Chrony,一个在不同节点同步服务实现:term:’NTP <Network Time Protocol (NTP)>’的方案。我们建议你配置控制节点引用更准确的(lower stratum)NTP服务其,然后其他节点引用控制节点。
1)安全并配置组件
安装软件包:
# yum install chrony
2)编辑“/etc/chrony.conf”文件并在你的环境需要的情况下增加、修改或者删除这些键值:
server NTP_SERVER iburst
使用NTP服务器的主机名或者IP地址替换 NTP_SERVER 。配置支持设置多个 server 值。
[root@likeadmin ~]# vi /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 192.168.164.128
#server 0.centos.pool.ntp.org iburst
3)为了让其它节点可以连接到控制节点上的chrony守护程序,请在“/etc/chrony.conf”文件中增加这个键值:
#allow 192.168.0.0/16
allow 192.168.164.2/24
4)启动 NTP 服务并将其配置为随系统启动:
# systemctl enable chronyd.service
# systemctl start chronyd.service
5)验证ntp同步情况
[root@likeadmin like]# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^? likeadmin 0 6 0 - +0ns[ +0ns] +/- 0ns
[root@likeadmin like]#
注:同样需要在计算节点和块存储节点配置时间同步,并配置主时钟源指向,控制节点。
2.4 关闭防火墙
[root@likeadmin like]# systemctl stop firewalld.service
[root@likeadmin like]# systemctl status firewalld.service
â— firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Mon 2019-03-18 15:02:52 CST; 2s ago
Docs: man:firewalld(1)
Process: 8801 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)
Main PID: 8801 (code=exited, status=0/SUCCESS)
Mar 18 14:20:15 likeadmin systemd[1]: Starting firewalld - dynamic firewall daemon...
Mar 18 14:20:17 likeadmin systemd[1]: Started firewalld - dynamic firewall daemon.
Mar 18 15:02:52 likeadmin systemd[1]: Stopping firewalld - dynamic firewall daemon...
Mar 18 15:02:52 likeadmin systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@likeadmin like]#
[root@likeadmin like]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@likeadmin like]#
注:同样需要在计算节点和块存储节点关闭防火墙。
2.5 更新yum
由于我们本机携带的yum源不是最新的,所以我们需要对我们yum源进行更新,已获得最新的软件包。
使用以下命令更新yum源:
# yum upgrade
注:因更新yum源会涉及到内核变更,yum源更新完成后,需要重启操作系统,已完成更新。
注:至此我们在操作系统层面的配置已基本完成。