1 使用Ansible的OpenStack自动化-德赢Vwin官网 网
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 以及用于将虚拟机联网的交换机

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

网络靶场为客户提供可扩展的虚拟化平台,用于网络安全培训、建模、vwin 和高级分析。我们为多个客户提供解决方案,包括美国国防部、新加坡网络安全局 (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公司其他云项目的自动化和云基础设施部署。

审核编辑:郭婷

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

    关注

    96

    文章

    2945

    浏览量

    66730
  • 虚拟机
    +关注

    关注

    1

    文章

    914

    浏览量

    28158
收藏 人收藏

    评论

    相关推荐

    华纳云:OpenStack是虚拟管理平台吗?其工作原理是什么?

    OpenStack 就是一个虚拟管理平台吗?这样说并不准确。它们存在很多相似性,但并非完全相同。的确,OpenStack 和虚拟管理平台都位于虚拟
    的头像 发表于 09-23 14:20 293次阅读

    开关电源自动化测试设备:如何实现自动化测试?

    开关电源自动化测试设备是将测试软件和测试硬件集成在一个电源测试柜中的ate自动测试设备,其测试原理是通过计算机操控测试仪器,从而减少人工干预,完成开关电源的自动化测试,旨在解放人力,提高测试效率,让测试更便捷。
    的头像 发表于 08-30 18:19 1248次阅读
    开关电源<b class='flag-5'>自动化</b>测试设备:如何实现<b class='flag-5'>自动化</b>测试?

    机械自动化和电气自动化区别是什么

    机械自动化和电气自动化是现代工业生产中两个重要的领域,它们在许多方面有着密切的联系,但也存在一些明显的区别。 一、基本概念 机械自动化 机械自动化是指利用机械设备、传感器、控制系统等技
    的头像 发表于 07-01 09:33 4004次阅读

    机械自动化自动化的一种吗

    引言 自动化技术是指利用控制装置对生产过程进行控制,以实现生产过程的自动化。机械自动化自动化技术的一种,它主要涉及到使用机械设备和控制系统来实现生产过程的
    的头像 发表于 07-01 09:32 1639次阅读

    工业自动化中的控制方式

    工业自动化是现代工业发展的重要标志,它极大地提高了生产效率,降低了生产成本,并改善了产品质量。在工业自动化中,控制方式作为实现自动化控制的关键环节,其重要性不言而喻。本文将详细介绍工业自动化
    的头像 发表于 06-17 11:41 794次阅读

    如何实现PLC的自动化控制逻辑

    在工业自动化领域,PLC(Programmable Logic Controller,可编程逻辑控制器)扮演着至关重要的角色。PLC通过编程实现自动化控制逻辑,使设备能够按照预定的程序进行工作,极大
    的头像 发表于 06-15 16:44 1166次阅读

    机械制造与自动化自动化类吗

    机械制造与自动化自动化领域的一个重要分支,它涉及到机械设计、制造、检测、控制等多个方面,是现代制造业的核心组成部分。 机械制造与自动化是指利用计算机、机器人、传感器等自动化设备和技术
    的头像 发表于 06-11 11:18 1503次阅读

    工业自动化自动化区别是什么

    工业自动化自动化是两个密切相关但又有所区别的概念。在这篇文章中,我们将详细探讨它们之间的区别,以及它们在现代工业生产中的应用。 一、自动化的定义 自动化是指通过使用机器、计算机和其他
    的头像 发表于 06-11 11:13 1650次阅读

    工业自动化包含哪些技术

    工业自动化是现代制造业中不可或缺的一部分,它通过使用各种技术和设备来提高生产效率、降低成本、提高产品质量和安全性。 一、工业自动化概述 工业自动化是指在生产过程中,通过使用计算机、传感器、执行器等
    的头像 发表于 06-11 11:11 925次阅读

    自动化码垛机车间使用优势

       随着科技的不断进步和自动化程度的提高,自动化码垛机在车间生产中的应用越来越广泛。相比传统的手工码垛方式,自动化码垛机具有许多显著的优势,为车间生产带来了较大的便利和效益。 首先,自动化
    的头像 发表于 03-27 16:19 326次阅读

    非标自动化设备

    1、非标自动化设备 2、根据需求设计和制造 3、完成代替人工的目标
    发表于 03-25 09:52

    工业自动化系统设计

    工业自动化系统设计是一项涉及多个领域和技术的综合性任务。它旨在通过自动化设备和系统的集成,提高生产效率、降低能耗、确保产品质量和增强企业竞争力。 一、工业自动化系统设计的原则 可靠性:工业自动
    的头像 发表于 02-02 17:00 791次阅读
    工业<b class='flag-5'>自动化</b>系统设计

    TC397怎么自动化烧录?

    TC397第一次烧录的时候需要先烧录六个包,使用Infineon Memtool 4.8软件,如果想要量产,怎么实现不用手动选择文件的烧录方式,使用自动化烧录
    发表于 01-25 07:03

    工业自动化中的直流负载和交流负载的应用

    工业自动化中的直流负载和交流负载的应用 工业自动化是指利用各种自动化设备和技术,对工业生产过程进行自动化控制和管理的一种技术和手段。其中,直流负载和交流负载都是工业
    的头像 发表于 01-18 15:12 687次阅读

    网络设备自动化运维工具—ansible入门笔记介绍

    Ansible是一款自动化运维工具,基于Python开发,集合了众多运维工具 (Puppet、CFengine、Chef、SaltStack)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
    的头像 发表于 01-15 13:46 1885次阅读
    网络设备<b class='flag-5'>自动化</b>运维工具—<b class='flag-5'>ansible</b>入门笔记介绍