Ansible
をテンプレートにして作成
Search in
this wiki
and
or
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
すごく簡単なので、お気に入りです。
#contents
#ls2
#br
* Ansibleの導入 [#k333ad23]
** 導入するサーバの前提条件 [#t5dc2912]
+ (Ansibleが導入可能な)任意のLinuxでよい。本稿ではCentOS ...
+ 事前導入するソフトウェアパッケージは最小構成。
+ インターネットに接続可能 ※必要ならproxy設定
/etc/dnf/dnf.conf
proxy=http://proxy.jomura.net:8080/ #as your own
~/.bashrc
export HTTP_PROXY=http://proxy.jomura.net:8080/ #as ...
export HTTPS_PROXY=${HTTP_PROXY}
+ パッケージの更新が事前に実行されている
dnf clean all && dnf -y update && reboot
** Ansibleのインストール [#fed309b6]
- rootで実行
dnf -y install epel-release
dnf -y install ansible
ansible --version
- CentOS8だとansible 2.9.11。CentOS7だとansible 2.9.10。(...
** インベントリファイルの作成 [#r2e36e99]
- 一般ユーザアカウントで実行
- "#as your own"の行は、各自、値を編集してね
cat << "_EOF_" > inventory.yml
redmine_servers:
hosts:
its.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
# http_proxy: http://proxy.jomura.net:8080 #as...
# https_proxy: http://proxy.jomura.net:8080 #as...
gitlab_servers:
hosts:
vcs.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
http_proxy: http://proxy.jomura.net:8080 #as ...
https_proxy: http://proxy.jomura.net:8080 #as ...
jenkins_servers:
hosts:
build.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
# http_proxy: http://proxy.jomura.net:8080 #as...
# https_proxy: http://proxy.jomura.net:8080 #as...
_EOF_
** ssh公開鍵のfinger printの記録 [#w4bbdcc8]
- playbookを実行する前に、各ホストにssh接続し、finger pri...
- 一般ユーザアカウントで実行
[user@localhost ~]$ ssh user@vcs.jomura.net
The authenticity of host 'vcs.jomura.net (10.130.146.45)...
ECDSA key fingerprint is SHA256:yXhFg2AqmDebKZ3fHOwMbVyI...
ECDSA key fingerprint is MD5:0a:93:88:6e:7f:1f:dd:8c:44:...
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'vcs.jomura.net' (ECDSA) to t...
** [option] 秘匿情報の暗号化 [#t0d40a05]
- インベントリファイル等に、パスワード等の秘匿情報を平文...
- 一般ユーザアカウントで実行
+ [鍵ファイルの作成]
echo 'PASSWORD' > ~/.ansible-vault-key
chmod 400 ~/.ansible-vault-key
-- 'PASSWORD'は任意の鍵文字列
-- .ansible-vault-keyファイルを秘匿する必要がある
+ [暗号化文字列の生成]
#例
echo -n 'user' | ansible-vault encrypt_string --vault-id...
-- --stdin-name(暗号化する項目の名称)の指定は任意だが、書...
#例
ansible_password: !vault |
$ANSIBLE_VAULT;1.1;AES256
6461333362623035393564613166333534396430383864...
3235666362373830626465333036333738356566643133...
6231383233383931623632626565393433363739306364...
3363303664353965660a39643964323436376439646132...
6663
-- 出力された文字列で、inventory.ymlファイルの該当項目を...
+ [--vault-idオプションの付与]
-- 暗号化文字列に置換した場合は、以降のansible-playbook実...
#例
ansible-playbook -i inventory.yml pb_jenkins_server.yml ...
終了行:
すごく簡単なので、お気に入りです。
#contents
#ls2
#br
* Ansibleの導入 [#k333ad23]
** 導入するサーバの前提条件 [#t5dc2912]
+ (Ansibleが導入可能な)任意のLinuxでよい。本稿ではCentOS ...
+ 事前導入するソフトウェアパッケージは最小構成。
+ インターネットに接続可能 ※必要ならproxy設定
/etc/dnf/dnf.conf
proxy=http://proxy.jomura.net:8080/ #as your own
~/.bashrc
export HTTP_PROXY=http://proxy.jomura.net:8080/ #as ...
export HTTPS_PROXY=${HTTP_PROXY}
+ パッケージの更新が事前に実行されている
dnf clean all && dnf -y update && reboot
** Ansibleのインストール [#fed309b6]
- rootで実行
dnf -y install epel-release
dnf -y install ansible
ansible --version
- CentOS8だとansible 2.9.11。CentOS7だとansible 2.9.10。(...
** インベントリファイルの作成 [#r2e36e99]
- 一般ユーザアカウントで実行
- "#as your own"の行は、各自、値を編集してね
cat << "_EOF_" > inventory.yml
redmine_servers:
hosts:
its.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
# http_proxy: http://proxy.jomura.net:8080 #as...
# https_proxy: http://proxy.jomura.net:8080 #as...
gitlab_servers:
hosts:
vcs.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
http_proxy: http://proxy.jomura.net:8080 #as ...
https_proxy: http://proxy.jomura.net:8080 #as ...
jenkins_servers:
hosts:
build.jomura.net #as your own
vars:
ansible_user: user #as your own
ansible_password: user #as your own
ansible_su_pass: root #as your own
proxy_env:
no_proxy: 127.0.0.1,localhost # do not delete
# http_proxy: http://proxy.jomura.net:8080 #as...
# https_proxy: http://proxy.jomura.net:8080 #as...
_EOF_
** ssh公開鍵のfinger printの記録 [#w4bbdcc8]
- playbookを実行する前に、各ホストにssh接続し、finger pri...
- 一般ユーザアカウントで実行
[user@localhost ~]$ ssh user@vcs.jomura.net
The authenticity of host 'vcs.jomura.net (10.130.146.45)...
ECDSA key fingerprint is SHA256:yXhFg2AqmDebKZ3fHOwMbVyI...
ECDSA key fingerprint is MD5:0a:93:88:6e:7f:1f:dd:8c:44:...
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'vcs.jomura.net' (ECDSA) to t...
** [option] 秘匿情報の暗号化 [#t0d40a05]
- インベントリファイル等に、パスワード等の秘匿情報を平文...
- 一般ユーザアカウントで実行
+ [鍵ファイルの作成]
echo 'PASSWORD' > ~/.ansible-vault-key
chmod 400 ~/.ansible-vault-key
-- 'PASSWORD'は任意の鍵文字列
-- .ansible-vault-keyファイルを秘匿する必要がある
+ [暗号化文字列の生成]
#例
echo -n 'user' | ansible-vault encrypt_string --vault-id...
-- --stdin-name(暗号化する項目の名称)の指定は任意だが、書...
#例
ansible_password: !vault |
$ANSIBLE_VAULT;1.1;AES256
6461333362623035393564613166333534396430383864...
3235666362373830626465333036333738356566643133...
6231383233383931623632626565393433363739306364...
3363303664353965660a39643964323436376439646132...
6663
-- 出力された文字列で、inventory.ymlファイルの該当項目を...
+ [--vault-idオプションの付与]
-- 暗号化文字列に置換した場合は、以降のansible-playbook実...
#例
ansible-playbook -i inventory.yml pb_jenkins_server.yml ...
ページ名: