ansible-playbookは自動的にKVMを配置してpython 3の詳しい教程をインストールすることを実現します。


1、ansible-playbookとは何ですか?
playbookはansibleを構成、配置、及び被制御ノードのシナリオを管理するために使用され、playbookの詳細な説明を通じて、一連のtaskを実行すると、遠端ホストが予想される状態に達することができます。playbookはAnsibleコントローラが被制御ノードに列記した一連のto-do-listのように、被制御ノードが完成しなければなりません。
2、ansible-playbook作成フォーマット
playbookは完全にyamlファイル形式です。YMALフォーマットはJSONのファイル形式に似ていて、分かりやすく、読みやすく、書きやすいです。読み取り可能性の高いデータ系列のフォーマットは、スクリプト言語との対話が容易である。
3、yamlファイル基本文法規則
  • サイズの書き込みに敏感です。
  • は、インデントを使用して階層関係を表している。
  • 字下げ時にはTabキーは使用できません。スペースのみ使用できます。あなたのideのtabボタン出力を4つのスペースに置き換えることができます。
  • 字下げのスペースの数は重要ではないです。同じレベルの要素が左側に配置されていればいいです。
  • 菵は注釈を表しています。
  • 4、YAMLサポートのデータ構造
  • オブジェクト:キーパッドペアのセットは、マッピング(mapping)/ハッシュ(hashes)/辞書(dictionary)
  • とも呼ばれる。
  • 配列:順序に配列された値のセットは、シーケンス(sequence)/リスト(list)
  • と呼ばれる。
  • 純量(scalars):単一の、再分割不可能な値
  • 5、playbook sの構成構造
  • Task:タスクリストとは、リモートホストが実行する一連の動作のことで、コアはansibleモジュールである。
  • Varabeles:変数
  • Templates:テンプレートシンタックスを含むテキストファイル
  • Handlers:プロセッサ、ある条件トリガ実行動作
  • Remoute_user:リモートホスト上でタスクを実行するユーザ
  • Hosts:指定されたタスクを実行するターゲットホスト
  • 6、ワンタッチでKVMをインストールし、python 3ファイルをインストールする
    
    ---
     - hosts: "{{hostname}}"  ####            playbook    hostname  
     remote_user: "{{user}}"  ####            playbook    user  
     vars:
      - python_workdir: /home/Python-3.7.4   ###       python        
     tasks:
      - name: change selinux_config  #     selinux  
       command: setenforce 0
       notify:
        - stop selinux   #      selinux               selinux           selinux      
      - name: install lib of kvm and python3  #    
       command: yum install -y qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-manager libvirt-client virt-install virt-viewer virt-v2v gcc zlib zlib-devel openssl-devel libffi-devel
       notify:   #                libvirtd  
        - libvirt_serivce 
      - name: add crontab_job  #      , 5    caches
       cron: name="drop_menmory" job="echo 1 > /proc/sys/vm/drop_caches" minute=*/5 state=present
      - name: copy python3 to remote_host  #           python     
       copy: src={{python_workdir}} dest=/home/
      - name: create workspace of python3
       command: mkdir /usr/local/python3  #         python      
      - name: change role of file #        python       
       command: chmod +x {{python_workdir}}/configure 
      - name: make python3  ###        python          python        
       command: ./configure --prefix=/usr/local/python3 && make && make install chdir={{python_workdir}}
      - name: create links of python3 and pip3  #         python3 pip3 link
       command: ln -s /usr/local/python3/bin/{{item.name}} /usr/bin/{{item.link}}
       with_items:
        - {name: "python3.7", link: "python3"}
        - {name: "pip3.7", link: "pip3"}
     handlers:
      - name: libvirt_serivce
       service: name={{item.name}} state={{item.state}} enabled={{item.enable}}
       with_items:
        - {name: "libvirtd",state: "started",enable: "yes"}
        - {name: "firewalld",state: "stopped",enable: "no"}
      - name: stop selinux
    7、実行方式
    コマンドラインに直接コマンドを入力して、実行ファイルを実行します。操作前に、リモートサーバを操作できるようにする必要があります。
    
    [root@localhost ~] ansible-playbook test.yaml -e "hostname=X.X.X.X user=XXXX" 
    締め括りをつける
    ここで、ansible-playbookが自動的に展開されるKVM及びpython 3をインストールするための詳細な教程の文章を紹介します。これに関連して、ansible-playbookの自動展開内容は以前の文章を検索してください。または、下記の関連記事を引き続きご覧ください。これからもよろしくお願いします。