当前位置: 首页 > news >正文

OpenStack快速入门

任务一    熟悉OpenStack图形界面操作

1.1 Horizon项目

OpenStack服务的图形界面都是由Horizon提供的

Horizon提供基于Web的模块化用户界面。

Horizon云管理员提供一个整体的视图

Horizon终端用户提供一个自主服务的门户

Horizon由云管理员进行管理与控制,云管理员可以通过Web界面管理OpenStack平台上的资源。

1.2 HorizonDjango框架

Horizon是一个基于Django框架的Web应用

Django基于MVC(模型视图控制器)模式设计实现。

模型 Models 文件 ——model.py ,使用 Python 类来描述数据表及其操作
视图 Views 文件 ——views.py ,包含页面的业务逻辑,该文件中的函数被称为视图。
Urls 文件 ——urls.py ,指出使用 URL 地址访问时需要调用的视图。
模板 Templates 文件 ——HTML 网页,定义 HTML 模板。

Horizon秉承Django的设计理念,注重可重用性,致力于开发可扩展性的面板框架。

1.3•Horizon功能架构

1.4 项目与用户

项目 OpenStack 服务调度的基本 单元。
用户 又称云用户,是指使用 OpenStack 云服务的个人、系统或服务的账户名称
可以 将用户分配给特定的项目,用户作为该项目的成员就拥有该项目的权限,而权限由用户的角色决定。
一个项目可以有多个用户(项目成员),一个用户可以操作和管理多个项目
OpenStack 用户要访问云资源,必须通过项目发出请求,项目中必须包括相关的用户
用户 用于身份认证,项目用于资源管理,而两者又是相互关联的。

1.5 自定义仪表板和面板

Horizon 负责 OpenStack 管理的统一 Web 界面,其源代码分布在两个 位置。
Ø / usr /lib/python2.7/site-packages/horizon :存放最 基本的、可以共享的类、表格和模板等。
Ø / usr /share/ openstack -dashboard :存放与 界面有直接关系、更加具体的类、表格和模板等,这些文件可以由用户修改以实现界面定制。
Horizon 提供 4 个仪表板,对应着图形界面的一级 节点,其中 每个仪表板目录中又定义其下级节点(面板)。
Ø admin (管理员
Ø identity (身份管理
Ø project (项目
Ø settings (设置

任务二    创建和操作虚拟机实例

2.1 创建虚拟机实例的前提条件

实例 —— 镜像、实例快照 (镜像快照) 、卷或卷快照。
实例类型 —— 实例 规格,表示一组特定的虚拟 资源。
密钥对 —— 虚拟机 实例启动时注入镜像中的 SSH 凭据。
安全组 —— 组特定防火墙规则的集合
网络 —— 虚拟 网络,在云中为虚拟机实例提供网络通信,使实例能够访问内部网络和外部网络

2.2 •虚拟机实例与镜像

实例 是在云中的物理节点上运行的虚拟机个体
镜像 是由特定的一系列文件按照规定格式制作,便于用户下载和使用的单一文件
创建 虚拟机实例所用的镜像是一个完整的操作系统
镜像 包括一个持有可启动操作系统的虚拟磁盘
实例 运行过程中的任何改变都不会影响其基础镜像 ,基础 镜像是只读的。

任务三    实现虚拟机与外部网络的通信

3.1 •OpenStack的虚拟网络

OpenStack 的网络 服务为 虚拟机实例提供网络 连接。
Neutron 为整个 OpenStack 环境提供软件定义网 络( SD N )支持。
开放式虚拟交换机( OVS 成为 OpenStack 部署中非常受欢迎的虚拟交换机
开放式 虚拟网络 OVN )增加 了对虚拟网络的原生支持 ,提高 OVS 在实际应用环境中的性能和规模
只要 能够运行 OVS ,就可以运行 OVN ,从 OVS 升级到 OVN 非常容易
典型的 Neutron 虚拟网络包括外部网络、内部网络和路由器

3.2 •浮动IP地址

私有地址是由 DHCP 服务器自动分配给虚拟机实例网络接口的 IP 地址
浮动 IP 地址是 Neutron 组件提供的 服务。
将数据包发送到分配有浮动 IP 地址的网络接口的工作由 Neutron 负责。
分配 有浮动 IP 地址的实例能够通过浮动 IP 地址从外部网络被访问。
要从外部网络中的其他计算机访问实例,需为实例分配浮动 IP 地址。

3.3 •OpenStack主机网卡添加到br-ex网桥上

1)将ens33网卡的配置文件复制一份到ifcfg-br-ex接口配置文件中。

2)使用文本编辑器修改br-ex网桥的配置文件其中关键是要将TYPE的值修改为OVSBridge,将DEVICETYPE的值设为ovs,将NAMEDEVICE的值都改为br-ex

3)使用文本编辑器修改ens33网卡的配置文件,其中关键是将TYPE值修改为OVSPort

4)重启network服务使上述修改生效。

★ ★外部网桥br-ex获得原ens33网卡的IP配置,而ens33网卡作为该网桥上的一个端口后,可以没有IP地址。

3.4 Linux计算机上通过SSH访问虚拟机实例

测试 SSH 密码 登录

 [root@node-a ~]# ssh cirros@192.168.199.87

The authenticity of host '192.168.199.87 (192.168.199.87)' can't be established.

ECDSA key fingerprint is SHA256:f/rI4UsneTZD/1B4S3GmxsbMJRVa/HK7hsvuHipExAg.

ECDSA key fingerprint is MD5:0d:35:2f:03:30:26:f3:6b:6a:59:52:c0:d9:16:83:5c.

Are you sure you want to continue connecting (yes/no)? yes     #加入可信主机列表中

Warning: Permanently added '192.168.199.87' (ECDSA) to the list of known hosts.

cirros@192.168.199.87's password:         #默认密码为gocubsgo

$ date                                      #登录成功后测试

Fri Aug 28 05:01:20 UTC 2020

$ exit                                       #退出登录

Connection to 192.168.199.87 closed.

3.5 Linux计算机上通过SSH访问虚拟机实例

SSH 证书 登录
Ø 基本用法

ssh -i 私钥文件 <用户名>@<实例IP地址>

Ø 示范

[root@node-a ~]# cp Downloads/demo-key.pem ~/.ssh

[root@node-a ~]# ssh -i ~/.ssh/demo-key.pem cirros@192.168.199.87

$ date                                 #免密码登录成功后测试

Fri Aug 28 05:05:55 UTC 2020

$ exit

Connection to 192.168.199.87 closed.

相关文章:

OpenStack快速入门

任务一 熟悉OpenStack图形界面操作 1.1 Horizon项目 •各OpenStack服务的图形界面都是由Horizon提供的。 •Horizon提供基于Web的模块化用户界面。 •Horizon为云管理员提供一个整体的视图。 •Horizon为终端用户提供一个自主服务的门户。 •Horizon由云管理员进行管理…...

STM32CubeIDE对STM32F072进行ADC配置及使用

目录 1. 配置2. 时钟3. ADC配置4. 代码补充 1. 配置 引脚配置&#xff1a;PB0 2. 时钟 都是48MHz 3. ADC配置 ADC配置&#xff1a; 开启中断&#xff1a; 4. 代码补充 轮训ADC采样&#xff1a; HAL_ADC_PollForConversion(&hadc,10);ADC采样&#xff1a; HAL_ADC_Start (&a…...

Leetcode Hot 100 刷题记录 - Day 1

问题描述&#xff1a; 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 示…...

k8s学习--Kruise Rollouts 基本使用

文章目录 Kruise Rollouts简介什么是 Kruise Rollouts&#xff1f;核心功能 应用环境一、OpenKruise部署1.安装helm客户端工具2. 通过 helm 安装 二、Kruise Rollouts 安装2. kubectl plugin安装 三、Kruise Rollouts 基本使用(多批次发布)1. 使用Deployment部署应用2.准备Roll…...

PHP框架详解 - CakePHP框架

CakePHP 是一个开源的 PHP Web 应用框架&#xff0c;它遵循 MVC&#xff08;模型-视图-控制器&#xff09;设计模式。CakePHP 提供了快速开发的功能&#xff0c;如代码自动生成、数据库交互的 CRUD 操作支持、灵活的路由、模板引擎、表单处理以及其它许多有用的特性22。 CakeP…...

el-cascader 支持多层级,多选(可自定义限制数量),保留最后一级

多功能的 el-cascader 序言&#xff1a;最近遇到一个需求关于级联的&#xff0c;有点东西&#xff0c;这里是要获取某个产品类型下的产品&#xff0c;会存在产品类型和产品在同一级的情况&#xff0c;但是产品类型不能勾选&#xff1b; 情况1&#xff08;二级菜单是产品&…...

leetcode498 对角线遍历

题目 给你一个大小为 m x n 的矩阵 mat &#xff0c;请以对角线遍历的顺序&#xff0c;用一个数组返回这个矩阵中的所有元素。 示例 输入&#xff1a;mat [[1,2,3],[4,5,6],[7,8,9]] 输出&#xff1a;[1,2,4,7,5,3,6,8,9] 解析 本题目主要考察的就是模拟法&#xff0c;首…...

北京活动会议通常会邀约哪些媒体参会报道?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 北京作为我国的首都和文化中心&#xff0c;各类活动会议资源丰富&#xff0c;吸引了众多媒体的关注。以下是一些通常会被邀约参会报道的重要媒体类型&#xff1a; 国家级新闻机构&#x…...

随心笔记,第六更

目录 一、 三步构建 XML转成java bean 1.XML转XSD 2.XSD转JavaBean 3.jaxb 工具类 4.测试 &#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是「Leen」。刚工作几年&#xff0c;想和大家一同进步&am…...

zustand 状态管理库的使用 结合TS

zustand 是一个用于React应用的简单、快速且零依赖的状态管理库。它使用简单的钩子&#xff08;hooks&#xff09;API来创建全局状态&#xff0c;使得在组件之间共享状态变得容易。 React学习Day10 基本用法 安装&#xff1a;首先&#xff0c;你需要安装zustand库。 npm insta…...

Maven 的生命周期详解

Maven 是目前最流行的项目管理和构建工具之一&#xff0c;广泛应用于 Java 开发项目中。它通过一系列约定和配置&#xff0c;极大地简化了项目的构建、依赖管理和生命周期管理。其中&#xff0c;Maven 的生命周期是其核心概念之一&#xff0c;贯穿了项目从构建、测试、打包到部…...

【稳定检索/投稿优惠】2024年生物技术与食品科学国际会议(ICBFS 2024)

2024 International Conference on Biotechnology and Food Science 2024年生物技术与食品科学国际会议 【会议信息】 会议简称&#xff1a;ICBFS 2024 大会时间&#xff1a;点击查看 截稿时间&#xff1a;点击查看 大会地点&#xff1a;中国厦门 会议官网&#xff1a;www.icb…...

iOS Category

原理&#xff1a; 【iOS】——分类、扩展和关联对象_ios 为什么分类不能加成员变量-CSDN博客 面试题&#xff1a; 1.Category和Extension区别&#xff1f; 在 Objective-C 中&#xff0c;Category 和 Extension 是两种用于向现有类添加新功能的机制&#xff0c;但它们各有特…...

5.Sentinel入门与使用

5.Sentinel入门与使用 1.什么是 Sentinel?Sentinel 主要有以下几个功能: 2.为什么需要 Sentinel?3.Sentinel 基本概念3.1 什么是流量控制?3.1.1 常见流量控制算法3.1.2 Sentinel 流量控制流控效果介绍如下: 3.2 什么是熔断?熔断策略 3.3 Sentinel 组成&#xff08;资源和规…...

上位机图像处理和嵌入式模块部署(h750 mcu和图像处理)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 前面我们说过&#xff0c;h750和之前的103、407相比较&#xff0c;本身cpu频率比较高&#xff0c;flash大小一般&#xff0c;但是ram比较大&#x…...

信创服务器操作系统的适配迁移分析

浅谈信创服务器操作系统的适配迁移 01 服务器操作系统迁移适配流程复杂 随着CentOS停服临近和红帽RHEL源码权限受限&#xff0c;服务器操作系统安全漏洞风险加剧。国内众多企业面临CentOS、REHL等系统升级替换的挑战。同时&#xff0c;出于安全、功能升级和合规需求&#xff0…...

在Ubuntu 20.04上安装和配置MySQL 8:详细指南和远程访问设置

目录 一、MySQL 8的特点和优势 二、在Ubuntu 20.04上安装MySQL 8 三、初始化MySQL 四、配置MySQL远程访问 五、 创建远程访问用户 六. 配置防火墙 七、 测试远程访问 总结 MySQL是一种开源的关系型数据库管理系统&#xff0c;被广泛应用于各种应用程序和网站中。MySQL …...

Vue43-单文件组件

一、脚手架的作用 单文件组件&#xff1a;xxx.vue&#xff0c;浏览器不能直接运行&#xff01;&#xff01;&#xff01; 脚手架去调用webpack等第三方工具。 二、vue文件的命名规则 建议用下面的两种方式。&#xff08;首字母大写&#xff01;&#xff01;&#xff01;&#x…...

如何快速使用向量检索服务DashVector?

免费体验阿里云高性能向量检索服务&#xff1a;https://www.aliyun.com/product/ai/dashvector 本文将介绍如何快速上手使用向量检索服务DashVector。 前提条件 已创建Cluster&#xff1a;创建Cluster。 已获得API-KEY&#xff1a;API-KEY管理。 已安装最新版SDK&#xff1a…...

Linux 用户和用户组 创建用户 创建组

介绍 一个组有多个用户&#xff0c;可以给组分配权限&#xff0c;那么该组的使用用户都有该组的权限&#xff0c;就不用一个个分配&#xff0c;而且很好管理。 创建用户组 groupadd 组名删除用户组 groupdel test查看用户所属组 id [用户名]修改用户组 把abc用户添加到m…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表

1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

提升移动端网页调试效率:WebDebugX 与常见工具组合实践

在日常移动端开发中&#xff0c;网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时&#xff0c;开发者迫切需要一套高效、可靠且跨平台的调试方案。过去&#xff0c;我们或多或少使用过 Chrome DevTools、Remote Debug…...