1.Ansibleはじめに
1).Ansible利点
Ansibleは、単純な自動化エンジン、完全な構成管理、展開を引用し、サービスのオーケストレーション、およびその他のIT要件であります
AnsibleはparamikoとPyYAMLとこれらのPythonライブラリ、Jinja2のを依存しているPythonのオープンソースソフトウェアを開発して実装することです
簡単なインストールと展開
SSHベースの構成管理
Ansibleはデーモンを必要としません
集中ストレージをログに記録
使いやすいAnsible
強力なAnsible
Ansible優秀デザイン
Ansibleは、クラウドコンピューティングとビッグデータプラットフォームのための非常に良いサポートを持っています
2).Ansibleとファブリックとの間の比較を
ツールボックスは、リモートサーバの実行コマンド多くの有用なツールを提供していますように生地があります
Ansibleは簡単な方法を提供し、ただ簡単にタスクを完了することができますプロセスに従ってそれを行います
ファブリックは、Ansibleフレームワークライブラリです
ファブリックシンプル、Ansibleコンプレックス
簡単なコマンドを実行するには、SSH経由ファブリック、Ansibleモジュールは削除モジュールを実行した後、後で実行するために、リモートサーバーにコピーされます。
ファブリックは、Pythonプログラミングの背景を必要とし、Ansibleは必要ありません。
コードを書くためのファブリックの必要性、Ansibleは唯一の観光名所を記述するためにYAMLの設定ファイルのフォーマットを記述する必要があります
ファブリックは、基本的なインターフェイス、ビジネスロジックを提供して達成することをユーザに要求、Ansibleはモジュールの数を提供し、ユーザーが唯一の学習モジュールを使用する必要があります
.AnsibleとSaltStack間3)比較
Ansibleのインストールが展開するのは簡単です、SaltStackは、クライアントが配信サーバコマンドを受け取り、インストールする必要があります
SaltStackは、標準的なSSH接続を使用して、高速Ansibleに対応し、ZeroMQを使用SaltStack伝送と通信します
Ansibleより安全、Ansibleデータを転送するための標準的なSSH接続を使用して、リモートホスト上のデーモンを起動しないでください
Windowsサポートにより優しいSaltStack
Ansible彼らの操作やメンテナンスが比較的単純で、SaltStackはデーモンとミニオンのマスターホストを起動する必要があります
2.Ansible入門します
1)。インストールAnsible
ansibleインストールPIP
2).Ansibleアーキテクチャ
インベントリ、API、モジュール(モジュール)と組成プラグインによってAnsibleオーケストレーションエンジン
エンジニアはAnsible脚本に書かれたリモートサーバの操作を実行する必要があり、その後、脚本のオペレーティングAnsibleの実行を使用します。
3).Ansible動作環境
Ansibleは、/ etc / ansible /読みデフォルトとなるリモートサーバリストのhostsファイルの設定 #1 MKDIRの/ etc / ansible #1 CATの/ etc / ansible /ホスト [テスト] 192.168.1.101 192.168.1.102 192.168.1.103 #ansibleピング-mテスト 192.168.1.101 | SUCCESS => { " 変更" :、偽の " ピングの":" ピンポン" } 192.168.1.102 | SUCCESS => { " 変更" :falseに、 " ピングの":" ピンポン" } 192.168.1.103 | SUCCESS => { " 変更" :偽、 " ピング":" ピンポン" }
4)アドホックモードを.Ansible
Ansible AD-と呼ばれるアドホックモード、ansible受注による操作モードアドホック #ansibleテストコマンド-m -a「ホスト名」 #1 -m -a ansibleテストコマンド「にwhoami」 サーバーにローカルファイルをコピーします: #ansibleテストコピー-a -m "SRC =の/ etc / ansible /ホストDEST =を/ tmp /ホスト" ファイルを変更し、所有者とパーミッションを: #ansibleすべてのファイル-a -m「DEST =を/ tmp / MODEをホスト= 500 = = MySQLのMySQLのグループ所有者「-become - パラメータとなるLinuxでsudoのに似ているコマンド リモートサーバにソフトウェアをインストールするには: #は、テストのyum -a -m ansible」名前= =現状のgitの「-becomeを
5)制御サーバハンドブックを使用して
実際の運用環境では、我々は一般的に、リモート・サーバがで書かれたYAML設定ファイルで行う必要がある 脚本Ansibleと呼ばれるYAMLファイル #1 CATのtest_playbook.yaml --- - テスト:ホストを なろ:はい become_method:sudoの タスク: - 名前:コピーファイルの コピー:SRC =の/ etc / ansible / DEST =ホストを/ tmp / data.txtをを - 名前:変更モードの ファイル:DEST =を/ tmp /所有者data.txtをするMODE = 500 = =グループのMySQL のMySQL - 名前:Ensure®インストール済みパッケージ のyum:PKG = " {{}}項目"国家= 現在 with_items: - Gitの # ansible、脚本test_playbook.yaml
3.Inventory管理
4.YAML文法
5.Ansibleモジュール
6.Playbook
7.roleの定義と使用
8.Ansibleプロフィール