0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用Ansible實現OpenStack自動化

西西 ? 來源:ADI ? 作者:Moinul Islam ? 2019-12-02 19:02 ? 次閱讀

本文旨在就置備虛擬機(除VMware以外)的一種替代方法提供一些見解。目標受眾包括但不限于處理虛擬機自動化問題的軟件開發(fā)人員。由于VMware的服務提供商許可證及其支持vRealize、vCenter和其他工具的基礎設施成本高昂,我們整合我們的資源,開發(fā)出了一種同樣能夠完成任務,但更經濟高效的替代方法。我們的解決方案采用開源技術,利用使用Ansible Tower?的DevOps方法來與OpenStack?交互,通過playbook進行實現,用于置備虛擬機。我們將此技術集成到我們的Cyber Range?軟件中,本文將它作為一個案例研究,以證明這種方法行之有效。

簡介

本文介紹為何Ansible Tower是使用playbook,在OpenStack中創(chuàng)建、部署和配置虛擬機最簡單的方法之一。系統(tǒng)性能、IT自動化、復雜系統(tǒng)的部署和快速生產力是軟件開發(fā)中與虛擬機交互的關鍵標準。Ansible Tower具有所有這些特性,它通過REST API輕松嵌入到現有工具和流程中。Ansible Tower是一個安全門戶,用戶可以通過它請求新IT服務和管理特定的云,使用它(作為開源工具)獲取IT資源,用于自動化應用部署和升級,以及配置軟件以實現聯網和安全。

為何選擇Ansible?

Ansible?是一個簡單的自動化工具,可以全面描述IT應用基礎設施。它易于學習,可以自編文檔,讀取方便,無需具備專業(yè)水平的計算機科學學位。自動化不應該比它所替代的任務更復雜。

簡單

■人類可讀的自動化

■無需特殊的編碼技能

■任務按序執(zhí)行

■很快實現生產力

功能強大

■應用部署

■配置管理

■工作流編排

■編排應用生命周期

  • 無代理

■無代理架構

■使用OpenSSH和WinRM

■無需使用或更新服務器

■可預測、可靠、安全

什么是Ansible Tower?

Ansible Tower是一個基于web的用戶界面,用于管理Ansible。它通過一個可視儀表板來集中和控制Ansible基礎設施??梢苑Q為自動化任務管理中心。

Ansible Tower

  • 基于web的用戶界面,用于管理Ansible
  • 通過一個可視儀表板來集中和控制Ansible基礎設施
  • 為Ansible提供REST API
  • Ansible

■一種開源自動化工具

■采用簡單設計,旨在讓所有人都能理解和學習使用

■無需自定義腳本或代碼

■提供自動化引擎

■管理網絡、基礎設施、操作系統(tǒng)

■提供預構建模塊,用于管理和配置主機(超過450)

■提供基于Python?的API

■使用OpenSSH

■通過playbook提供自動化和編排。

什么是OpenStack?

OpenStack是一個云操作系統(tǒng),它控制整個數據中心的大量計算、存儲和網絡資源,通過儀表板進行管理。該儀表板使管理員能夠進行控制,同時允許用戶通過web界面置備資源。它是一個開源項目,提供基礎設施即服務平臺來構建支持云的應用程序,并且支持采用多個管理程序來置備和編排云。它可以運行多層工作負載或開源開發(fā)工具。最終用戶可以輕松置備資源和支持幾乎所有的管理程序,包括VMware ESXi、Xen和KVM。

為何選擇OpenStack?

OpenStack可以輕松與Ansible Tower、VMware管理程序和Hyper-V集成,從而使用現有的基礎設施。OpenStack和KVM管理程序免費提供,但需要技能熟練的管理員進行配置。OpenStack是一個用于部署、開發(fā)和構建云平臺的開源平臺。是一個命令行界面,功能強大,提供管理、API、RESTful web服務以及基于web的控制面板控件。這個開源云軟件用于管理計算(Nova)、塊卷存儲(Cinder)、虛擬機鏡像服務(Glance)和網絡構建(Neutron)。OpenStack作為基礎,不僅簡化了部署過程,還簡化了開發(fā)、存儲、聯網、監(jiān)測、管理和應用。

OpenStack

  • 開源:此技術得到了大型開發(fā)人員社區(qū)的支持
  • 為客戶提供價值、效率和敏捷性
  • 由模塊化、可伸縮且靈活的實用程序集組成
  • 經過大型企業(yè)的檢驗和測試
  • 互操作性和開源API允許管理員管理混合IT環(huán)境,無需額外層成本

Ansible Playbook

Playbook是一個YAML文件,描述了要在一組主機(在Ansible inventory中定義)中執(zhí)行的任務的列表。Playbook由一個或多個腳本組成,用于對任務進行分組。它定義虛擬機名稱、VMDK文件、網絡、IP地址和場景信息。Playbook是實現真正簡單的配置管理和多機部署系統(tǒng)的基礎。它可以宣布配置,也可以為手動流程編排步驟。

Playbook

  • 定義要在主機上執(zhí)行的任務
  • 任務按照playbook指定的順序執(zhí)行
  • YAML格式

圖1.playbook示例。

OpenStack與Ansible的交互

Ansible playbook在OpenStack環(huán)境中定義一系列任務和配置。任務示例包括:置備虛擬機實例、定義虛擬機IP以及連接虛擬機的交換機。

案例研究:Cyber Range軟件

Cyber Range為客戶提供可擴展的虛擬化平臺,用于網絡安全培訓、建模、仿真和高級分析。我們?yōu)槎嗉铱蛻籼峁┙鉀Q方案,包括美國國防部、新加坡網絡安全局(CSA/SITSA)和日本九州大學。

圖2.Cyber Range web應用通過REST API與Ansible和OpenStack交互。

1.用戶點擊開始按鈕開始練習(實操網絡安全培訓)。

2.Cyber Range軟件通過REST API使用POST請求將訓練場景名稱和用戶名稱調用到Ansible Tower。

3.Ansible Tower執(zhí)行用于練習的playbook任務,并向OpenStack提供配置信息。這些信息包括虛擬機鏡像和網絡信息。

4.OpenStack置備虛擬機鏡像并配置網絡。

5.OpenStack將狀態(tài)返回給Ansible Tower,Ansible Tower再將狀態(tài)返回給web應用。

6.如果狀態(tài)是成功的,Cyber Range軟件會顯示Windows或Linux圖標,提供超鏈接用于開啟控制臺。

總結

通過將Ansible Tower與OpenStack集成到Cyber Range軟件中,我們能夠構建一個應用程序,為全球客戶提供按需培訓和真實場景。與Ansible REST API和playbook集成充分利用了置備更加系統(tǒng)化的自動化流程時所需的許多代碼。本文討論了如下幾個要點:

  • Ansible可以自動化各種IT任務,包括系統(tǒng)置備、軟件包安裝、網絡配置和安全,以及云服務的實例置備。
  • 使用playbook這個方法可以簡化虛擬機編排和配置,以及可能在自定義網絡中包含多個虛擬機的復雜場景的部署等任務,但在部署期間可能需要運行自定義腳本。
  • 使用playbook逐個執(zhí)行命令的流程單元被稱為任務。
  • 要使用Ansible實現OpenStack自動化,需要采用OpenStack、Ansible、Ansible Tower和源代碼控制(例如Git存儲庫)。

我們建議,在ADI公司的其他云項目上進行自動化和云基礎設施部署時,可以考慮采用Ansible和OpenStack。

作者簡介

Moinul Islam是ADI公司可信安全解決方案(TSS)部(位于美國佛羅里達州坦帕市)的軟件工程師。他在軟件工程、設計和開發(fā)方面擁有20年的經驗。他于1997年獲得俄亥俄州克里夫蘭州立大學M.C.I.S.學位。在可信安全解決方案部工作時,Moinul主要負責設計和開發(fā)一項名為Sypher Ultra的產品,它是Xilinx? Zynq? UltraScale+?設備的一項附加安全措施。他還專注于另一個名為“密鑰管理”的項目,該項目與nCipher?硬件安全模塊集成。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 虛擬機
    +關注

    關注

    1

    文章

    917

    瀏覽量

    28194
  • OpenStack
    +關注

    關注

    1

    文章

    69

    瀏覽量

    18917
收藏 人收藏

    評論

    相關推薦

    如何利用RFID技術有效實現工具自動化追蹤?

    俗話說,工欲善其事,必先利其器,如何利用RFID技術有效實現工具自動化追蹤?是制造行業(yè)非常重要需要思考的問題。
    發(fā)表于 08-02 06:57

    ansible playbook+jenkins如何實現自動新增域名

    ansible-playbook+jenkins實現自動新增域名
    發(fā)表于 06-03 11:58

    LabVIEW與Tektronix示波器實現電源測試自動化

    LabVIEW與Tektronix示波器實現電源測試自動化 在現代電子測試與測量領域,自動化測試系統(tǒng)的構建是提高效率和精確度的關鍵。本案例介紹了如何利用LabVIEW軟件結合Tektr
    發(fā)表于 12-09 20:37

    紅帽推出Ansible 2.2 :為開源自動化框架奠定牢靠的基礎

    日前,開源解決方案供應商紅帽公司宣布全面推出Ansible 2.2——一款簡單、強大且無代理的領先開源IT自動化框架軟件的最新版本。Ansible 2.2提供了性能增強、更全面的容器和Windows
    發(fā)表于 11-07 20:20 ?1013次閱讀

    ansible-first-book 自動化運維工具

    ansible-first-book 自動化運維工具
    發(fā)表于 09-08 09:31 ?5次下載

    Ansible企業(yè)級自動化運維探索的詳細資料說明

    本文檔的主要內容詳細介紹的是Ansible企業(yè)級自動化運維探索的詳細資料說明主要內容包括了:場景一:自動化運維之利器,場景二:企業(yè)級自動化,場景三:助力構建DevOps,場景四:容器應
    發(fā)表于 06-03 08:00 ?2次下載
    <b class='flag-5'>Ansible</b>企業(yè)級<b class='flag-5'>自動化</b>運維探索的詳細資料說明

    利用Ansible實現OpenStack自動化

    ;  要使用Ansible實現OpenStack自動化,需要采用OpenStackAnsib
    的頭像 發(fā)表于 12-03 17:29 ?2818次閱讀
    <b class='flag-5'>利用</b><b class='flag-5'>Ansible</b><b class='flag-5'>實現</b><b class='flag-5'>OpenStack</b><b class='flag-5'>自動化</b>

    虛擬自動化中AI的重要性

    虛擬自動化的主要好處之一是消除每個系統(tǒng)中的人工干預和手動編寫腳本。管理員可以集中創(chuàng)建自動化策略并將其推送到設備組。即使是Puppet和Ansible等配置管理供應商也使用
    發(fā)表于 02-04 15:55 ?1180次閱讀

    一文詳解Ansible自動化運維

    CMDB:CMDB 存儲和管理者企業(yè)IT架構中的各項配置信息,是構建 ITIL 項目的核心工具,運維人員可以組合 CMDB 和 Ansible,通過 CMDB 直接下發(fā)指令調用Ansible 工具集完成操作者所希望達到的目標;
    的頭像 發(fā)表于 05-19 17:06 ?4352次閱讀
    一文詳解<b class='flag-5'>Ansible</b>的<b class='flag-5'>自動化</b>運維

    Ansible Container容器自動化構建部署工具

    ./oschina_soft/ansible-container.zip
    發(fā)表于 05-11 10:15 ?1次下載
    <b class='flag-5'>Ansible</b> Container容器<b class='flag-5'>自動化</b>構建部署工具

    使用AnsibleOpenStack自動化

    通過將 Ansible Tower 與 OpenStack 集成到 Cyber Range 軟件中,我們能夠構建一個應用程序,為全球客戶提供按需培訓和真實場景。將 Ansible REST API 與行動手冊集成,極大地
    的頭像 發(fā)表于 12-21 14:12 ?1184次閱讀
    使用<b class='flag-5'>Ansible</b>的<b class='flag-5'>OpenStack</b><b class='flag-5'>自動化</b>

    利用Ansible批量100臺服務器添加Crontab

    今天浩道跟大家分享關于Ansible自動化運維相關硬核干貨,利用Ansible批量100臺服務器添加Crontab !
    的頭像 發(fā)表于 08-19 14:24 ?633次閱讀

    借助 NVIDIA NVUE 和 Ansible 實現數據中心網絡自動化

    數據中心自動化可以追溯到大型機的早期,運營效率是其優(yōu)勢之一。多年來,數據中心內外的技術都發(fā)生了變化。因此,工具和方法也發(fā)生了變化。 NVIDIA NVUE Collection 和 Ansible
    的頭像 發(fā)表于 12-20 19:35 ?516次閱讀
    借助 NVIDIA NVUE 和 <b class='flag-5'>Ansible</b> <b class='flag-5'>實現</b>數據中心網絡<b class='flag-5'>自動化</b>

    網絡設備自動化運維工具—ansible入門筆記介紹

    Ansible是一款自動化運維工具,基于Python開發(fā),集合了眾多運維工具 (Puppet、CFengine、Chef、SaltStack)的優(yōu)點,實現了批量系統(tǒng)配置、批量程序部署、批量運行命令等功能。
    的頭像 發(fā)表于 01-15 13:46 ?1924次閱讀
    網絡設備<b class='flag-5'>自動化</b>運維工具—<b class='flag-5'>ansible</b>入門筆記介紹

    機械自動化自動化的一種嗎

    引言 自動化技術是指利用控制裝置對生產過程進行控制,以實現生產過程的自動化。機械自動化自動化
    的頭像 發(fā)表于 07-01 09:32 ?1666次閱讀