openStack-train 搭建部署

当面对KVM集群的时候,我们对KVM的管理以及宿主机的管理就会遇到很大的难度,例如:

  • 查看每一个宿主机有多少台KVM虚拟机?
  • 查看每一个宿主机资源信息,每一个KVM虚拟机资源信息?
  • 查看每一台宿主机配置信息,每一个KVM虚拟机的配置信息
  • 查看每一台宿主机IP地址,每一个KVM虚拟机的IP地址?

OpenStack介绍

带计费功能的kvm管理平台OpenStack,IaaS层自动化管理kvm宿主机,云主机定制化操作。

OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache 2.0许可证授权的自由软件和开放源代码项目。

OpenStack是一个开源的云计算管理平台项目,通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。

OpenStack云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。

OpenStack核心组件

  • 身份服务(Identity Service):Keystone。为OpenStack其他服务提供身份验证、服务规则和服务令牌的功能,管理Domains、Projects、Users、Groups、Roles。
  • 镜像服务(Image Service):Glance。一套虚拟机镜像查找及检索系统,支持多种虚拟机镜像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、VMDK),有创建上传镜像、删除镜像、编辑镜像基本信息的功能。
  • 资源监控服务 (Placement service):放置提供了一个 WSGI 脚本,用于使用apache、nginx 或其他支持 WSGI 的 Web 服务器运行服务。根据用于部署开放堆栈的打包解决方案,WSGI 脚本可能位于 或 中
  • 计算(Compute):Nova。一套控制器,用于为单个用户或使用群组管理虚拟机实例的整个生命周期,负责虚拟机创建、开机、关机、挂起、暂停、调整、迁移、重启、销毁等操作。
  • 网络&地址管理(Network):Neutron。提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。为用户提供接口,可以定义Network、Subnet、Router,配置DHCP、DNS、负载均衡、L3服务,网络支持GRE、VLAN。
  • UI 界面 (Dashboard):Horizon。OpenStack中各种服务的Web管理门户,用于简化用户对服务的操作,例如:启动实例、分配IP地址、配置访问控制等。
  • 块存储 (Block Storage):Cinder。为运行实例提供稳定的数据块存储服务,它的插件驱动架构有利于块设备的创建和管理,如创建卷、删除卷,在实例上挂载和卸载卷。

逻辑架构

OpenStack版本介绍

OpenStack的每个主版本系列以字母表顺序(A~Z)命名,以年份及当年内的排序做版本号,从第一版的Austin(2010.1)到目前最新的稳定版 Yoga,共经历了23个主版本。

官网:https://www.openstack.org/

部署文档:https://docs.openstack.org/install-guide/openstack-services.html#minimal-deployment-for-train

基础环境

首先介绍下基础环境,这个是非常重要的,如果你基础环境都准备不好,那么你在搭建OpenStack各个服务的时候会遇到各种奇葩的问题。后期搭建服务的时候出问题大部分都是前面的基础操作没有做好,比如主机名、本地DNS解析、selinux没关、防火墙firewalld没有设置开机自动关闭等等。

虚机硬件:

我使用的是vmware的虚机准备两台;

——》一个作为controller控制节点;

——》一个作为compute数据节点;

主机名 外网口(net) 内口(仅主机) 配置 系统
controller 192.168.220.10/192.168.220.1/24 192.168.10.10 2u/6G/40G centos7.9
compute 192.168.100.11/192.168.220.1/24 192.168/10.20 2u/6G/40G centos7.9

硬件配置

这个根据你的实际情况来进行划分,上面这个只是通过OpenStack官方文档建议的最小的配置来设置的,因为两台机器用途是不同的

  • controller 控制节点:上面会安装很多的软件启动很多的服务,甚至数据库都在他上面,内存可以给多点;
  • compute数据节点,他主要是用来提供硬件资源,启动虚机的,他本身启动的服务就是个nova、neutron和我复用在上面的cinder,他主要就是为创建的虚机来提供硬件资源,所以在搭建过程中不需要给太大

在部署的初期的时候controller控制节点上面2CPU 6G内存足够了,而在compute节点上2CPU4G内存绰绰有余,当你环境搭建好之后可以在手动的给compute节点来提升资源。

基础环境

  • controller
==========
# 设置主机名
==========
hostnamectl set-hostname controller && reboot ==========
# 配置hosts
==========
cat >> /etc/host << eof
192.168.10.10 controller
192.168.10.20 compute
eof ==========
# 关闭防火墙和selinux
==========
systemctl stop firewalld && systemctl disable firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config ==========
# 免密登录
==========
ssh-keygen
ssh-copy-id controller
ssh-copy-id compute ==========
# 各节点配置OpenStack源
==========
rm -rf /etc/yum.repos.d/*
cat > /etc/yum.repos.d/openstack.repo << eof
[base]
name=base
baseurl=https://repo.huaweicloud.com/centos/7/os/x86_64/
enable=1
gpgcheck=0 [extras]
name=extras
baseurl=https://repo.huaweicloud.com/centos/7/extras/x86_64/
enable=1
gpgcheck=0 [updates]
name=updates
baseurl=https://repo.huaweicloud.com/centos/7/updates/x86_64/
enable=1
gpgcheck=0 [train]
name=train
baseurl=https://repo.huaweicloud.com/centos/7/cloud/x86_64/openstack-train/
enable=1
gpgcheck=0 [virt]
name=virt
baseurl=https://repo.huaweicloud.com/centos/7/virt/x86_64/kvm-common/
enable=1
gpgcheck=0
eof yum clean all && yum repolist all ==========
# 安装时间同步
==========
yum install -y chrony
cp -a /etc/chrony.conf{,.bak}
sed -i '3,6s/^/#/g' /etc/chrony.conf
sed -i '7c server ntp1.aliyun.com iburst' /etc/chrony.conf
sed -i '8c allow 0.0.0.0/0' /etc/chrony.conf
sed -i '9c local stratum 10' /etc/chrony.conf
systemctl restart chronyd
systemctl enable chronyd chronyc sources -v #时间同步验证
  • compute
==========
# 设置主机名
==========
hostnamectl set-hostname compute && reboot ==========
# 配置hosts
==========
cat >> /etc/host << eof
192.168.10.10 controller
192.168.10.20 compute
eof ==========
# 关闭防火墙和selinux
========== systemctl stop firewalld && systemctl disable firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config ==========
# 免密登录
==========
ssh-keygen
ssh-copy-id controller
ssh-copy-id compute ==========
# 将repo文件从控制节点上复制一份
==========
rm -rf /etc/yum.repos.d/*
scp root@controller:/etc/yum.repos.d/* /etc/yum.repos.d/
yum clean all && yum makecache ==========
# 安装时间同步
==========
yum install -y chrony
cp -a /etc/chrony.conf{,.bak}
sed -i '3,6s/^/#/g' /etc/chrony.conf
sed -i '7s/^/server controller iburst/g' /etc/chrony.conf systemctl restart chronyd
systemctl enable chronyd chronyc sources -v #时间同步验证

就绪 opensack-train版 软件框架 & 管理工具和防火墙包

# yum install centos-release-openstack-train  -y
# yum install python-openstackclient openstack-selinux -y

openStack-train 1-搭建部署的更多相关文章

  1. OpenStack Train版 简单部署流程

    environment 1.网络平面 management(管理网络)→软件安装,组件通信 provider(提供实例网络)→:提供者网络:直接获取ip地址,实例之间直接互通   自服务网络(私有网络 ...

  2. openstack Train版 “nova-status upgrade check”报错:Forbidden: Forbidden (HTTP 403)

    部署openstack train版,在部署完nova项目时,进行检查,执行 nova-status upgrade check 返回报错信息如下: [root@controller ~]# nova ...

  3. openstack的控制节点部署

    openstack的控制节点部署 主要是使用了本地安装的那个镜像. 会出现几个问题, 1.重启服务无法启动. 2.环境变量无法正确配置可以自己配置

  4. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  5. Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)

    不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...

  6. Ubuntu14.04下Cloudera安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)(在线或离线)

    第一步: Cloudera Manager安装之Cloudera Manager安装前准备(Ubuntu14.04)(一) 第二步: Cloudera Manager安装之时间服务器和时间客户端(Ub ...

  7. Spark集群基于Zookeeper的HA搭建部署笔记(转)

    原文链接:Spark集群基于Zookeeper的HA搭建部署笔记 1.环境介绍 (1)操作系统RHEL6.2-64 (2)两个节点:spark1(192.168.232.147),spark2(192 ...

  8. nginx Win下实现简单的负载均衡(1)nginx搭建部署

    快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...

  9. zabbix环境搭建部署(一)

     Linux高端架构师课程 Linux实战运维国内NO.1全套视频课程 QQ咨询:397824870  > 监控报警 > zabbix环境搭建部署(一) zabbix环境搭建部署(一) 监 ...

  10. openstack Train 版本dashaboard 404问题

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明本文链接:https://blog.csdn.net/weixin_28738845/articl ...

随机推荐

  1. 用这开源小书学 Docker,香!

    > 最新.全面.通俗.可多端阅读的 Docker 教程小书.>> 编程导航开源仓库:https://github.com/liyupi/code-navDocker 可以说是一个改变 ...

  2. 使用PHP实现字符串的上标和下标,比如:M²和Log₂FC

    要在PHP中实现字符串的上标和下标效果,并直接在命令行或网页中正确显示,你可以分别使用Unicode转义序列或HTML实体来表示上标(UPER)和下标(SUB)字符.对于打印到网页的情况,可以使用HT ...

  3. 解码 xsync 的 map 实现

    解码 xsync 的 map 实现 最近在寻找 Go 的并发 map 库的时候,翻到一个 github 宝藏库,xsync (https://github.com/puzpuzpuz/xsync) . ...

  4. 基于Java“花鸣”B2C电子商务平台设计实现(源码+lw+部署文档+讲解等)

    \n文末获取源码联系 感兴趣的可以先收藏起来,大家在毕设选题,项目以及论文编写等相关问题都可以给我加好友咨询 系统介绍: 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件 ...

  5. Java实现快速快速排序算法

    算法简介 快速排序(Quick Sort) 是由冒泡排序改进而得的.在冒泡排序过程中,只对相邻的两个记录进行比较,因此每次交换两个相邻记录时只能消除一个逆序.如果能通过两个(不相邻)记录的一次交换直接 ...

  6. Node.js 处理 File

    Node.js 处理 File fs 模块 常规使用 运用递归遍历目录树 创建文件和目录 读写文件 path 模块 对于 file 的理解,此处 fs 模块 Node.js 提供了处理文件系统的内置模 ...

  7. Python 代码中的 yield 到底是什么?

    在Python编程中,有一个强大而神秘的关键字,那就是yield.初学者常常被它搞得晕头转向,而高级开发者则借助它实现高效的代码.到底yield是什么?它又是如何在Python代码中发挥作用的呢?让我 ...

  8. docker centos8 java8 mysql8 部署springboot项目

    docker centos8 java8 mysql8 部署springboot项目 一,用idea将springboot项目打成jar包 二,将打的jar包用xshell的rz上传到docker的c ...

  9. Gartner web3 的未来市场前景

    内行人叫web3 外行人叫元宇宙 元宇宙(Metaverse) Gartner将元宇宙定义为一个由通过虚拟技术增强的物理和数字现实融合而成的集体虚拟共享空间.这个空间具有持久性,能够提供增强沉浸式体验 ...

  10. 使用 addRouteMiddleware 动态添加中间

    title: 使用 addRouteMiddleware 动态添加中间 date: 2024/8/4 updated: 2024/8/4 author: cmdragon excerpt: 摘要:文章 ...