中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中ansible動態Inventory腳本的示例分析

發布時間:2021-08-03 11:28:33 來源:億速云 閱讀:286 作者:小新 欄目:開發技術

小編給大家分享一下Python中ansible動態Inventory腳本的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

1.Ansible Inventory  介紹;

Ansible Inventory 是包含靜態 Inventory 和動態 Inventory 兩部分的,靜態 Inventory 指的是在文件中指定的主機和組,動態 Inventory 指通過外部腳本獲取主機列表,并按照 ansible 所要求的格式返回給 ansilbe 命令的。這部分一般會結合 CMDB 資管系統、云計算平臺等獲取主機信息。由于主機資源一般會動態的進行增減,而這些系統一般會智能更新。我們可以通過這些工具提供的 API 或者接入庫查詢等方式返回主機列表。

2.mysql數據結構如下;

Python中ansible動態Inventory腳本的示例分析

3.本章節演示從mysql數據作為數據源生成動態ansible 主機;

#!/usr/bin/env python36
def commmysql():
  import mysql.connector
  import json
  mydb = mysql.connector.connect(
    host="192.168.1.23", # 數據庫主機地址
    user="root", # 數據庫用戶名
    passwd="123456",
    database="test"
  )
  mycursor = mydb.cursor()
  mycursor.execute(" select host,`group` from ansible_hosts;")
  #mycursor.
  myresult = mycursor.fetchall()
  data = dict()
  #####查詢出group分組并去重#############
  groups = list(set([i[1].decode() for i in myresult]))
  data["all"] = {"children": groups}
  data["_meta"] = {"hostvars": {}}
  for group in groups:
    data[group] = dict()
    data[group]["hosts"] = list()
    for x in myresult:
      if x[1].decode("utf-8") == group:
        data[group]["hosts"].append(x[0].decode("utf-8"))
  return json.dumps(data,indent=3)
def main():
  from optparse import OptionParser
  parse = OptionParser()
  parse.add_option("-l", "--list", action="store_true", dest="list", default=False)
  (option, arges) = parse.parse_args()
  if option.list:
    print(commmysql())
  else:
    print("abc")
if __name__ == '__main__':
  from optparse import OptionParser
  parse = OptionParser()
  parse.add_option("-l", "--list", action="store_true", dest="list", default=False)
  (option, arges) = parse.parse_args()
  if option.list:
    print(commmysql())
  else:
    print("test")

4.數據格式結果如下;

Python中ansible動態Inventory腳本的示例分析

5.ansible 執行動態主機如下;

Python中ansible動態Inventory腳本的示例分析

以上是“Python中ansible動態Inventory腳本的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昌江| 溆浦县| 太康县| 太谷县| 克东县| 太仆寺旗| 高邑县| 牙克石市| 屏山县| 虹口区| 酉阳| 启东市| 奇台县| 邵武市| 温宿县| 凌海市| 镇平县| 布拖县| 庆城县| 吴江市| 齐河县| 汕头市| 崇州市| 永寿县| 萨嘎县| 蒙自县| 常德市| 蓬安县| 兴国县| 常山县| 彭水| 东兰县| 松滋市| 安丘市| 冕宁县| 灵璧县| 西乌| 泰和县| 吴桥县| 普宁市| 鄂尔多斯市|