0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用Ansible的OpenStack自动化

星星科技指导员 来源:ADI 作者:Moinul Islam 2022-12-21 14:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文旨在提供有关除 VMware 之外的另一种配置虚拟机方法的见解。目标受众包括但不限于处理虚拟机自动化的软件开发人员。由于 VMware 的服务提供商许可证及其支持 vRealize、vCenter 和其他工具的基础架构费用高昂,我们利用我们的资源将一种经济高效的替代方法组合在一起,以完成相同的任务。我们的解决方案是一种利用开源技术的方法,这些技术具有使用 Ansible Tower 的 DevOps 方法与 OpenStack 交互,这些方法通过 playbook 实现以配置虚拟机。我们将这项技术集成到我们的网络靶场中®®™软件,在本文中描述为案例研究,以证明该方法是成功的。

介绍

本文介绍了 Ansible Tower 如何成为使用剧本从 OpenStack 创建、部署和配置虚拟机的最简单方法之一。系统性能、IT 自动化、复杂系统的部署和速度生产力是软件开发中与虚拟机交互的关键标准。所有这些功能都可以在 Ansible Tower 中使用,它具有 REST API,可以轻松地将其嵌入到现有工具和流程中。使用 Ansible Tower 作为开源工具,用户可以在其中请求新的 IT 服务并管理特定的云和 IT 资源,从而实现一个安全的门户,用于自动化应用程序部署和升级,以及网络和安全软件的配置。

为什么选择安思布尔?

Ansible 是一个简单的自动化工具,可以完美地描述 IT 应用程序基础架构。它易于学习,自我记录,并且不需要研究生水平的计算机科学学位即可阅读。自动化不应该比它所取代的任务更复杂。®

简单

人类可读的自动化

无需特殊的编码技能

按顺序执行的任务

快速提高工作效率

应用部署

配置管理

工作流编排

编排应用生命周期

无代理

无代理架构

使用 OpenSSH 和 WinRM

无需利用或更新代理

可预测、可靠且安全

什么是Ansible Tower?

Ansible Tower 是一个基于 Web 的用户界面,用于管理 Ansible。它通过可视化仪表板集中和控制 Ansible 基础架构。它可以称为自动化任务的中心

安斯布尔塔

用于管理 Ansible 的基于 Web 的用户界面

通过可视化仪表板集中和控制 Ansible 基础架构

为 Ansible 提供 REST API

安斯布尔

是一个开源的自动化工具

旨在让任何人都易于理解和学习

不需要自定义脚本或代码

提供自动化引擎

管理网络、基础设施、操作系统

提供用于管理和配置主机的预构建模块(超过 450 个)

提供基于 Python 的 API®

使用 OpenSSH

通过行动手册提供自动化和编排。

什么是OpenStack?

OpenStack 是一个云操作系统,可控制整个数据中心的大型计算、存储和网络资源池,所有这些都通过仪表板进行管理,该仪表板使管理员能够控制,同时授权其用户通过 Web 界面配置资源。它是一个开源项目,提供基础架构即服务平台来构建云感知应用程序,并支持多个虚拟机管理程序来配置和编排云。它可以运行多层工作负载或开源开发工具。最终用户可以轻松调配资源并支持几乎所有虚拟机管理程序,包括 VMware ESXi、Xen 和 KVM。

为什么选择OpenStack?

OpenStack可轻松与Ansible Tower,VMware虚拟机管理程序和Hyper-V集成,以利用现有基础架构。OpenStack 和 KVM 虚拟机管理程序是免费的,但需要熟练的管理员进行配置。OpenStack 是一个用于部署、开发和构建云平台的开源平台。它是一个命令行界面,功能强大,具有管理,API和RESTful Web服务以及基于Web的控制面板控件。这个开源云软件用于管理计算(Nova),块存储(Cinder),虚拟机映像服务(Glance)和网络结构(Neutron)。OpenStack 是一个基础,它不仅简化了部署过程,还简化了开发、存储、网络、监控、管理和应用程序。

开放堆栈

开源:该技术由庞大的开发人员社区提供支持

为客户提供价值、效率和敏捷性

由模块化、可扩展且灵活的实用程序集组成

经过大型企业的尝试和测试

互操作性和开源 API 允许管理员管理混合 IT 环境,而无需额外的开销层

安斯布尔行动手册

行动手册是一个 YAML 文件,它描述了要对一组主机执行的任务列表,这些主机在 Ansible 清单中定义。剧本由一个或多个重头戏组成,用于对任务进行分组。它定义虚拟机名称、VMDK 文件、网络连接、IP 地址和场景信息。行动手册是真正简单的配置管理和多机部署系统的基础。行动手册可以声明配置,但它们也可以协调任何手动排序流程的步骤。

剧本

定义要在主机上执行的任务

任务按剧本中的顺序执行

亚姆格式

poYBAGOio7KAZK9FAABkxYRfs3Y548.jpg?h=270&hash=41EF0855C83E0ABD9F9E7E060DD833FAEBF58C78&la=en&imgver=1

图1.示例剧本。

OpenStack 与 Ansible 的交互

Ansible 行动手册定义了 OpenStack 环境中的一系列任务和配置。任务的示例包括预配虚拟机实例、定义虚拟机的 IP 以及用于将虚拟机联网的交换机

案例研究:网络靶场是一个现实生活中的软件

网络靶场为客户提供可扩展的虚拟化平台,用于网络安全培训、建模、模拟和高级分析。我们为多个客户提供解决方案,包括美国国防部、新加坡网络安全局 (CSA/SITSA) 和日本九州大学。

用户单击开始按钮开始练习(动手网络安全培训)。

网络靶场软件使用 POST 请求通过 REST API 将训练场景名称和用户名调用到 Ansible Tower。

Ansible Tower 执行练习手册任务,并向 OpenStack 提供配置信息。此信息包括虚拟机映像和网络连接信息。

OpenStack 配置虚拟机映像并配置网络。

OpenStack 将状态返回给 Ansible Tower,Ansible Tower 将状态返回给 Web 应用程序。

如果状态为成功,网络靶场软件将显示 Windows 或 Linux 图标,该图标启用超链接以打开控制台。

poYBAGOio7SATQSNAACUu3T43aA502.jpg?h=270&hash=C591E6E2A56B98DEA5C2AA2B25C2CB94386D5DF1&la=en&imgver=1

图2.Cyber Range Web 应用程序通过 REST API 与 Ansible 和 OpenStack 交互。

总结

通过将 Ansible Tower 与 OpenStack 集成到 Cyber Range 软件中,我们能够构建一个应用程序,为全球客户提供按需培训和真实场景。将 Ansible REST API 与行动手册集成,极大地利用了配置到更系统化的自动化流程所需的许多代码。我们可以将本文的关键点总结如下:

Ansible 可以自动执行各种 IT 任务,包括系统配置、软件包安装、网络配置和安全性,以及云服务的实例配置。

使用 playbook 的方法可能需要在部署期间运行自定义脚本,该方法简化了编排和配置虚拟机的任务,以及部署可能包含自定义网络中多个虚拟机的复杂方案。

使用剧本逐个执行命令的过程单元称为任务。

要使用 Ansible 实现 OpenStack 自动化,需要 OpenStack、Ansible、Ansible Tower 和源代码控制(例如 Git 存储库)。

我们建议考虑将Ansible和OpenStack用于ADI公司其他云项目的自动化和云基础设施部署。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源代码
    +关注

    关注

    96

    文章

    2953

    浏览量

    69638
  • 虚拟机
    +关注

    关注

    1

    文章

    968

    浏览量

    30160
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    罗克韦尔自动化邀您共赴2025年自动化博览会

    11 月 17 - 20 日,作为工业自动化、信息和数字转型领域的全球领先企业之一,罗克韦尔自动化将在芝加哥举办的 2025 年自动化
    的头像 发表于 11-17 17:54 1631次阅读

    使用Ansible实现大规模集群自动化部署

    当你面对1000+服务器需要部署时,你还在一台台手工操作吗?本文将揭秘如何用Ansible实现大规模集群的自动化部署,让运维效率提升10倍!
    的头像 发表于 08-27 14:41 517次阅读

    利用Ansible自动化部署Linux服务器

    作为一名在运维一线摸爬滚打多年的工程师,我见过太多因为手工配置导致的生产事故。今天,我将毫无保留地分享我在大规模Linux服务器自动化管理中积累的实战经验,让你也能轻松驾驭数百台服务器的配置管理。
    的头像 发表于 08-06 17:59 1031次阅读

    Ansible Playbook自动化部署Nginx集群指南

    面对日益猖獗的DDoS攻击,手动部署防护已经out了!今天教你用Ansible一键部署具备DDoS防御能力的Nginx集群,让攻击者哭着回家!
    的头像 发表于 08-06 17:54 642次阅读

    Ansible代码上线项目实战案例

    在DevOps浪潮中,自动化部署已经成为每个运维工程师的必备技能。今天我将分享一个完整的Ansible代码上线项目实战案例,让你的部署效率提升10倍!
    的头像 发表于 07-24 14:03 365次阅读

    电源模块在配电自动化终端中的应用

    配电终端设备的可靠性和自动化程度,直接影响到整个配电自动化系统的可靠性和自动化水平。由于配电终端设备一般安装于户外或比较偏僻的地方,不可能有直流电源提供,因此,配电网终端设备的直流供电方式成为各配网
    的头像 发表于 07-22 10:20 1.8w次阅读
    电源模块在配电<b class='flag-5'>自动化</b>终端中的应用

    自动化计算机的功能与用途

    工业自动化是指利用自动化计算机来控制工业环境中的流程、机器人和机械,以制造产品或其部件。工业自动化的目的是提高生产率、增加灵活性,并提升制造过程的质量。工业自动化在汽车制造中体现得最为
    的头像 发表于 07-15 16:32 525次阅读
    <b class='flag-5'>自动化</b>计算机的功能与用途

    自动化运维工具Terraform和Ansible的区别

    、可重复的部署要求。本文将深入探讨 Terraform 和 Ansible 这两大运维利器的核心差异,明确它们在配置管理和资源编排领域的分工边界,为运维工程师提供清晰的技术选型指导。
    的头像 发表于 07-09 09:59 951次阅读

    Ansible Playbook中的变量使用技巧

    在inventory中定义的连接变量(比如ansible_ssh_user);优先级第二。
    的头像 发表于 04-15 10:26 671次阅读

    工业DTU对工业自动化通信格局的重塑

    随着工业4.0和智能制造的快速发展,工业自动化系统对通信技术的要求越来越高。工业数据传输单元(DTU,DataTransferUnit)作为一种新兴的通信设备,正在逐步重塑工业自动化通信格局,为工业
    的头像 发表于 03-28 14:09 603次阅读
    工业DTU对工业<b class='flag-5'>自动化</b>通信格局的重塑

    HFSS 自动化建模工具

    因工作需求,自己写的HFSS参数自动化建模工具,目前只实现了常用的四种模型,可定制,如需可联系 qq:1300038043 附件下载链接:https://pan.baidu.com/s/1TVeTTFiJw-pxSyT1AT8IQA 提取码: kxup
    发表于 02-27 17:44

    环球仪器Uflex灵活自动化平台概述

    在生产厂房全面走向自动化之际,最令厂家头痛的莫过于生产线上一些难以自动化的组装工序。若以功能单一的自动化平台来解决,投资可能没有保障。环球仪器的Uflex灵活自动化平台提供一个完美的解
    的头像 发表于 02-08 09:13 953次阅读
    环球仪器Uflex灵活<b class='flag-5'>自动化</b>平台概述

    IT自动化工具Ansible基础入门

    Ansible是帮助运维人员实现自动化的最重要的工具之一。
    的头像 发表于 02-07 10:00 1314次阅读
    IT<b class='flag-5'>自动化</b>工具<b class='flag-5'>Ansible</b>基础入门

    通用自动化测试软件 - TAE

    INTEWORK-TAE(Test Automation Executor) 是一款通用的测试用例自动化执行框架,用于汽车电子自动化测试,可支持仿真( MIL/SIL/HIL)、故障注入、 故障诊断、测量标定等测试业务,提供友好的图形
    的头像 发表于 01-02 13:42 1286次阅读
    通用<b class='flag-5'>自动化</b>测试软件 - TAE

    自动化创建UI并解析数据

    *附件:32960_auto.rar备注:Main.vi是ui自动化2.1.vi,配置文件为32960.B.ini。 目前可以实现根据配置文件自动化创建控件并布局,且可以自动解析接收到的数据内容写入
    发表于 12-10 08:41