55
す。Puppet使用すと、マニェストはサー上で実行されから、
ント す。 ントにそント
のみ信されけのされないよにするめに
す。Puppet リ ッ ク ジ ュ ー き ま 。こ
ジュールでると、をすぐにきますGitHubVoxPupuliリッ
NGINXモジルが、NGINX テンートす。
項目
Puppetキュメンョン
Puppet パッキュョン
Puppet サービスドキュメン
Puppet ファイルキュ
Puppet テンート化ドキュョン
Vox Pupuli NGINXジュー
5.5 Chef使ったインス
問題
Chef 使 用して NGINXインスールNGINX して 管 理
そのChef ります。
解決
使 用して NGINXインスールファする
使用しックブック成しNGINXリロードよう
。以 下 は レ シ ピ 例 で す
package 'nginx' do
action :install
end
service 'nginx' do
supports :status => true, :restart => true, :reload => true
action [ :start, :enable ]
end
template 'nginx.conf' do
path "/etc/nginx.conf"
source "nginx.conf.erb"
owner 'root'
group 'root'
mode '0644'
notifies :reload, 'service[nginx]', :delayed
end
5.5 Chef使ったインスール |
56
packageブロッNGINXインスールします。serviceロックNGINXが開始
されて起になているを確その残りChef対しnginxサー
どのようなアクションをるかりのChef言しまtemplateロッ
クはERBイルテンートとしイル 者とrootして
イル /etc/nginx.conf す 、ま templateロックmode644に設
してnginxサービスロードするよします:delayedトメ
Chef了がるまで機しますテンプファイ
。デ フ ォ NGINXファイルインスールするシ
や、ERBンプのルーにより複になるももあります
解説
Chefは、Rubyをベーールでクラ ーバー
ることChef Zeroとして 単 独 構 成 Chef 、パ ブ リ
クのクックブックや、パーマケッれるなコミティがあり
ーパーマーケットにるパッククックブックはBerkshelfンドラ
インユーリティを使インスール/ す。Chefは非常に多機であり、
ここに示したさなサンプルですーパーマーケッックNGINX
ックブックはッケージマネージャーまはソからNGINXを簡
インスールするションなるモジュールをコンパイルしインスール
するそしテンプする供します
項目
Chefキュメンョン
Chef パッ
Chef サービス
Chef テンート
Chef Supermarket for NGINX
5.6 Ansible使ったインスール
問題
Ansible 使 用して NGINXインスールNGINX して 管 理
そのAnsible ります。
解決
Ansibleイブックを成しNGINXインスールnginx.conf イル
。以 下 が 、NGINXインスールするプブックスクファ
ファイトになっること、NGINX ること
してく い 。
| 5ラマビリティと自
57
- name: NGINX | Installing NGINX
package: name=nginx state=present
- name: NGINX | Starting NGINX
service:
name: nginx
state: started
enabled: yes
- name: Copy nginx configuration in place.
template:
src: nginx.conf.j2
dest: "/etc/nginx/nginx.conf"
owner: root
group: root
mode: 0644
notify:
- reload nginx
packageブロッNGINXインスールします。serviceロックNGINXが開始
時に有化されいるを確templateロックJinja2 イル
をテンプト化し、果とて生成されたものの所有者ルーroot
して /etc/nginx.conf す。templateブロッmode644
定しnginxサービスロードするよ知しますンプされ
。デ NGINX イル Jinja2
ンプレーループと変換を伴う常に複雑なものになる場もあります
解説
Ansibleは、Pythonをベーにした、使れてワフール
す 。タ ス YAML 、フ Jinja2ート
使 す。Ansible 、サ Ansible Towerというサーバー
を提供しますしかしAnsibleはローンかの実バを直接構築す
ためクライアントへ行、ドアロンで用されますAnsibleサー
対しSSHで接続し、構成フルの内容実行他の構成管理ツ同様
ブリックールする大コミュニティがありますAnsibleミュ
ニティは Ansible Galaxyと呼れますプレイブックででき練さたロー
けることきま
項目
NGINX 提供のAnsibleール
Ansibleキュメンョン
Ansible パッ
Ansible サービス
Ansible テンート
Ansible Galaxy
5.6 Ansible使ったインスール |
58
5.7 SaltStack使ったインスール
問題
SaltStack 使 用して NGINXインスールNGINX構 成 して 管 理
、そ SaltStack ります。
解決
管 理 して NGINXインスールしファイ
理しますステファイSalt State file [SLS] す 。こ の フ
nginxッケージをインストールしサービス行さ時にになり、
ファイルえらにリロードことを 認し
nginx:
pkg:
- installed
service:
- name: nginx
- running
- enable: True
- reload: True
- watch:
- file: /etc/nginx/nginx.conf
/etc/nginx/nginx.conf:
file:
- managed
- source: salt://path/to/nginx.conf
- user: root
- group: root
- template: jinja
- mode: 644
- require:
- pkg: nginx
パッケユーティリティNGINXインスールしnginx.conf
す。NGINXッケーはイトールされサービス行され
て い 、起 に な りま すSaltStack 使 す る 、例 と お り 、Saltって
理されまざまなテンプレーによプレ化されを宣
できますンプレート化されたァイまれませデフトの NGINX
イルよう Jinja2 ート言 語 ープ 変 数
伴うありますこのrequireート
、フ NGINXインスールするるこ
す 。フ イ ル NGINXサービスにwatchィレ ィブ
があるためにロードさreloadィレTru e れ て る た 、再
なくリロードします。
| 5ラマビリティと自
59
解説
SaltStackは、YAMLーバーのステするツールで
SaltStackュールPython す。Salt 、フ
Jinja2ンプト言供しますしかファイMakoPython自体
など多くオプショますSaltStack 、マ ー ( ン (
使用しクラトとサーバー表しますミニオン
きましかターオントランスポとは
り、SaltStack す。SaltではSaltント ZeroMQTCP
Reliable Asynchronous Event Transport (RAET) き ま 。ま
使わずにマスSSHることきまトランートフォルト
あるため、SaltStackマスーサーーへの負少ない数のミンにメッセ
す。
項目
SaltStack NGINXジュール
SaltStackキュメンョン
SaltStack インスールパッケ
SaltStackジドイル
SaltStack Jinja 使テンート
5.8 Consulテンートよる
問題
Consulを使て環境の変化に対応ために、NGINX構成動化必要
ります。
解決
consul-templateファイ使用して、択したNGINX成フ
ァイテンプレ化しま
upstream backend { {{range service "app.backend"}}
server {{.Address}};{{end}}
}
成ブクをテンプレート化すConsulート
フ ァ イ ル で 。こ の テ ン ー ト app.backendとして 識 別 Consulのノー
ープConsul 各ノーートノードIP 使 用して
ィレ す。
5.8 Consuテンートよる |
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.149.230.44