初步了解OpenStack(T版)

一、概述

一、云计算服务类型

laaS(基础架构即服务):
1、提供底层IT基础设施服务,包括处理能力、存储空间、网络资源等。
2、面向对象一般是IT管理人员。
PaaS(平台即服务):
1、把安装好开发环境的系统平台作为一种服务通过互联网提供给用户。
2、面向对象—般是开发人员。
Saas (软件即服务):
1、直接通过互联网为用户提供软件和应用程序等服务。
2、面向对象一般是普通用户。

二、商业云分类

公有云:所有人都能用。
私有云:只为企业内部使用,服务器是托管给阿里云组织维护。
专有云::也是为企业内部所使用,使用的服务器是客户自己的服务器。
混合云:例如银行。

三、OpenStack服务

服务 项目名称 描述
Compute(计算服务) Nova 负责实例生命周期的管理,计算资源的单位。对Hypervisor进行屏蔽,支持多种虚拟化技术(红帽默认为KVM),支持横向扩展
Network(网络服务) Neutron 负责虚拟网络的管理,为实例创建网络的拓扑结构。是面向租户的网络管理,可以自己定义自己的网络,各个租户之间互不影响
ldentity(身份认证服务) Keystone 类似于LDAP服务,对用户、租户和角色、服务进行认证与授权,且支持多认证机制
Dashboard(控制面板服务) Horizon 提供一个Web管理界面,与OpenStack底层服务进行交互
Image Service(镜像服务) Glance 负责为运行实例提供持久的块存储设备,可进行方便的扩展,按需付费,支持多种后端存储
Block Storage(块存储服务) Cinder 负责为运行实例提供持久的块存储设备(磁盘持久化),可进行方便的扩展,按需付费,支持多种后端存储
Object Storage(对象存储服务) Swift 为OpenStack提供基于云的弹性存储,支持集群无单点故障(镜像、快照)
Telemetry(计量服务) Ceilometer 用于度量、监控和控制数据资源的集中来源,为OpenStack用户提供记账途径

1、每个服务是一个项目
2、项目之间是隔离的,大多数通过API接口进行数据交互传输
3、OpenStack核心是实例(虚拟机),大部分核心功能围绕实例进行的
4、阿里云中核心是云主机(ECS)

四、OpenStack的优势

解耦
遵守同一接口约束
冗余
数据传输,会有持久化缓存,知道数据传输完,才会将任务删除,并取消持久化
兼容性
OpenStack兼容其他公有云(OpenStack的云),方便用户进行数据迁移
可扩展性
模块化设计,可以通过横向扩展,增加节点、添加资源
灵活性
根据自己的需要建立相应基础设施(iaas)、增加集群规模
顺序保证
消息队列,按特定的顺序来处理
缓冲
通过将数据转换为数据流,进行输出或输入

五、OpenStack分层思路

1、OpenStack分为多个独立的项目(按照功能)。
2、每个项目中,也划分了不同的子系统。
3、子系统之间是通过消息代理通讯(统一的规范)。
4、在不同项目之间通讯(统一),公共API。
以项目职能划分:全局、核心、辅助

六、OpenStack组件通信关系

基于AMQF协议的通信
用于每个项目内部各个组件之间的通信。
基于SQL的通信
用于各个项目内部的通信。(openstack 核心组件/服务很多都是由python开发的)
基于HTTP协议进行通信
通过各项目的API建立的通信关系,API都是RESTful Web APl。
1)项目之间通讯,比如nova和keystone之间通讯http,而http在openstack中是借助apache来实现的
2)restful :通讯协议的一种规范
3.1)项目之间点到点的通讯是借助不同项目暴露出来的公共api接口进行的
3.2)通讯的过程:借助了AMQP进行通讯
4)URL形式
通过Native API实现通信
OpenStack各组件和第三方软硬件之间的通信。

七、OpenStack物理架构

在这里插入图片描述
网络节点:网络节点通常需要3个网络端口,分别用于与控制节点进行通信、与除控制节点之外的计算和存储节点之间的通信、外部的虚拟机与相应网络之间的通信。
1、提供者网络:为内部网络提供插件、代理以及功能模块支持。
2、自服务网络:用于连接外部。

二、环境部署

主机名 内存 硬盘 处理器 VM NAT
ct 8G 300G 4 192.168.211.10 192.168.238.140
c1 8G 300G 4 192.168.211.20 192.168.238.141
c2 8G 300G 4 192.168.211.30 192.168.238.142

一、基本配置

#ct、c1、c2
[root@localhost ~]# hostnamectl set-hostname ct
[root@localhost ~]# su
[root@ct ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
IPV4_ROUTE_METRIC=90 #添加优先级:nat网卡优先 
[root@ct ~]# vi /etc
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建 OpenStack T 版本环境需要进行多个步骤,包括环境准备、安装依赖包、配置数据库和消息队列、安装和配置各个组件等。这里提供一个参考脚本,供你参考: ```bash #!/bin/bash # 环境准备 echo "nameserver 8.8.8.8" > /etc/resolv.conf echo "nameserver 8.8.4.4" >> /etc/resolv.conf hostnamectl set-hostname controller # 安装依赖包 yum install -y centos-release-openstack-train yum update -y yum install -y python-openstackclient yum install -y openstack-selinux # 配置数据库和消息队列 yum install -y mariadb mariadb-server python2-PyMySQL systemctl enable mariadb.service systemctl start mariadb.service mysql_secure_installation echo "[mysqld] bind-address = 10.0.0.11 [galera] binlog_format=row default-storage-engine=innodb innodb_autoinc_lock_mode=2 innodb_locks_unsafe_for_binlog=1 query_cache_size=0 query_cache_type=0 bind-address = 10.0.0.11 [mysql] bind-address = 10.0.0.11" > /etc/my.cnf.d/openstack.cnf yum install -y rabbitmq-server systemctl enable rabbitmq-server.service systemctl start rabbitmq-server.service rabbitmqctl add_user openstack RABBIT_PASS rabbitmqctl set_permissions openstack ".*" ".*" ".*" # 安装和配置各个组件 yum install -y openstack-keystone httpd mod_wsgi # 配置 Keystone openstack-config --set /etc/keystone/keystone.conf database connection mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone openstack-config --set /etc/keystone/keystone.conf token provider fernet su -s /bin/sh -c "keystone-manage db_sync" keystone keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone keystone-manage credential_setup --keystone-user keystone --keystone-group keystone keystone-manage bootstrap --bootstrap-password ADMIN_PASS \ --bootstrap-admin-url http://controller:5000/v3/ \ --bootstrap-internal-url http://controller:5000/v3/ \ --bootstrap-public-url http://controller:5000/v3/ \ --bootstrap-region-id RegionOne # 配置 Apache echo "ServerName controller" > /etc/httpd/conf.d/servername.conf systemctl enable httpd.service systemctl start httpd.service # 验证 Keystone export OS_USERNAME=admin export OS_PASSWORD=ADMIN_PASS export OS_PROJECT_NAME=admin export OS_USER_DOMAIN_NAME=Default export OS_PROJECT_DOMAIN_NAME=Default export OS_AUTH_URL=http://controller:5000/v3 export OS_IDENTITY_API_VERSION=3 openstack token issue ``` 这个脚本包含了环境准备、安装依赖包、配置数据库和消息队列、安装和配置 Keystone 等组件的操作。你可以根据自己的需要进行修改和调整,以满足特定的环境需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值