Ansibleデプロイメントと基本構成

1.何が可能ですか:

Ansibleは、オープンソースの自動化プラットフォーム、構成管理ツール、自動化された運用および保守ツールです。
Pythonの開発に基づいて、ansibleは多くの操作および保守ツール(puppet、cfengine、chef、func、fabric)の利点を統合し、バッチシステム構成、バッチプログラム展開、バッチ実行コマンドなどの機能を実現します。
Ansibleはモジュールに基づいて機能し、バッチ展開の機能はありません。実際のバッチ展開はansibleによって実行されるモジュールであり、ansibleはフレームワークを提供するだけです。

ansibleの利点:

1-1。クロスプラットフォーム操作のサポート:ansibleは、物理、仮想、クラウド、およびコンテナー環境に適した、Linux、Windows、unix、およびネットワークデバイスのエージェントレスサポートを提供します

1-2。強力な読みやすさ:人的エラーを減らします。プレイブックの実行中に、ターゲットホストが正しい状態にある場合、変更は行われません。

1-3。完璧な説明アプリケーション:プレイブック(idempotent)

1-4。バージョンコントロールを簡単に管理:プレイブックはプレーンテキストであり、ソースコードと見なすことができます

1-5。動的リストをサポートする

1-6。オーケストレーションは他のシステムと簡単に統合できます:人形、ジェンキンス

1-7。コードとしてのインフラストラクチャ:コマンドを使用して簡単なタスクを完了できます

2. Ansibleインストール:

これは、AlibabaCloudが提供するネットワークウェアハウスからダウンロードする必要があります。

dnf install ansible -y        下载ansible
ansible --viersion			  查看当前ansible版本信息

ansible的基本配置文件信息:
/etc/ansible/ansible.conf		##全局配置文件,默认很少修改
/etc/ansible/hosts			    ##全局主机清单清单文件

ansibleサービスのリモートリンクはsshに基づいているため、ホスト(サーバー)にansibleをインストールした後、ansibleクライアントホストとの公開鍵と秘密鍵、およびパスワードなしの接続を確立する必要があります。
ここに写真の説明を挿入

3. Ansibleのビルドリスト:

清单就是ansible控制主机的列表
/etc/ansible/hosts                     ##默认全局清单文件,通常不编辑此清单,而是自建文件(自创用户下的ansible文件下的hosts)

#1.直接书写受管主机名或ip,每行一个
node1.westos.com
node2.westos.com
172.25.254.240


#2.设定受管主机的组[组名称]
#清单查看:
ansible 清单中组名称 [-i 清单文件]  --list-hosts
ansible ungrouped --list-hosts
ansible all --list-hosts

#单层清单#
[list1]
node1.westos.com
node2.westos.com

[list2]
node2.westos.com

[list3]
172.25.254.240

次のように、ネストされた定義にすることもできます。serversグループの2つのサブグループは、webserversとdbserversです。

[webservers]
server1.westos.org
server2.westos.org
172.25.0.1 

[dbservers]
node1.westos.org
node1.westos.org

[servers:children]
webservers
dbservers

キー接続方法を正しく確立し、対応するクライアントリストに書き込んだ後、次のことを簡単に確認できます。(sshはすべてのターゲットホストに接続します)
すべてはすべての
可能なテストを意味します-mpingはテストグループ内のクライアントをテストすることを意味します
ここに写真の説明を挿入

主机规格的范围化操作#
#通过指定主机名称或IP的范围可以简化Ansible主机清单
#语法:
#[start:end]
[westostest]
172.25.254.[100:108]:22       
如果需要更改端口,直接使用 “:端口号  ” 添加即可

4. ansibleでの操作例:
デフォルト:赤いフォントは実行エラーを表し、エラーが発生すると、次の命令は実行されません。
黄色のフォントは操作実行後の変更を表します。(正常に実行されました)
緑のフォントはコマンドの実行を表します。成功、エラーは発生せず、変更も行われませんでした。-
kはパスワードの要求、
-uは***ユーザー、
-mは使用するモジュールの名前
ここに写真の説明を挿入
、5。ansibleコマンドで指定されたリストの正規表現:

*		##所有                       注意: 在命令行中使用时(ad-hoc)要加“ ”,否则会变成当前目录中的所有;
		##172.25.254.*
		##westos*

:		##逻辑或
		##westos1:linux
		##172.25.254.100:172.25.254.200

:&		##逻辑与
		##westos1:&linux
		##主机即在westos1清单也在linux清单中

:!		##逻辑非                       需要用单引号转译 !
		##westos1:!linux
		##在westos1中不在linux中

~		##以关键字开头

~(str1|str2)	##以条件1或者条件2开头		


6.Ansible構成ファイルパラメーターの詳細な説明:


キーポイント:
ansible ansible-docモジュール名で各モジュールのパラメーターの詳細な説明を表示して、モジュールのパラメーター情報を表示します(ファイルの内容の最後に例を直接表示できます)


ansibleリストのグループ名-mmodule -u remote_user

6-1:構成ファイルの分類と優先順位:

/etc/ansible/ansible.cfg		#基本配置文件,找不到其他配置文件此文件生效,优先级最低
~/.ansible.cfg			        #当前目录中没有ansible.cfg时,用户家目录中的此文件生效
./ansible.cfg			        #当前目录中的ansible文件优先级最高

6-2:一般的な構成パラメーター:

ここに写真の説明を挿入

おすすめ

転載: blog.csdn.net/lb1331/article/details/111994276