Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ansible 使うとき何考えてるの/ansible-role-reuse
Search
zinrai
February 08, 2021
Technology
0
410
Ansible 使うとき何考えてるの/ansible-role-reuse
Ansible Night in Tokyo 2019.07
https://ansible-users.connpass.com/event/135965/
zinrai
February 08, 2021
Tweet
Share
More Decks by zinrai
See All by zinrai
OKRとチケット駆動開発を組み合わせたチームでの取り組み/okr-tidd-knowledge
zinrai
0
140
テキスト化した「チケット駆動開発がまわりはじめるまでの取り組み」の紹介/okr-tidd-case-intro
zinrai
1
1.6k
チケット駆動開発がまわりはじめるまでの取り組み/okr-tidd-case
zinrai
10
5.3k
mail_service_unittest
zinrai
1
160
vyos_mtg3_vxlan_lt
zinrai
0
200
freebsd_shellscript_install
zinrai
1
170
debian_shellscript_install
zinrai
0
260
Other Decks in Technology
See All in Technology
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
170
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
5
630
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
Lexical Analysis
shigashiyama
1
150
複雑なState管理からの脱却
sansantech
PRO
1
140
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Designing for humans not robots
tammielis
250
25k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
YesSQL, Process and Tooling at Scale
rocio
169
14k
For a Future-Friendly Web
brad_frost
175
9.4k
Docker and Python
trallard
40
3.1k
Facilitating Awesome Meetings
lara
50
6.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Transcript
Ansible 使うとき何考えてるの
自己紹介 @zinrai やってること コンテナによるアプリケーション実行基盤の整備 メトリクス管理・監視基盤の整備 ログ管理・監視基盤の整備
Ansible 歴 2014/07 〜
お話しすること
私が、どのように考え、 Ansible でサーバーを構成管理しているかをお話する。
サーバー構築
サーバー構築とは何だろうか。
私は、様々なソフトウェアのインストールと設定を組み合わせ、サービスが提供可能 なサーバーを作り上げる行為だと考えている。
サーバー構築手順書
Apache インストール Apache 設定 NTP インストール NTP 設定 etc.
ソフトウェアのインストールと設定が手順書の中に書かれているのではないだろう か。
Ansible でのサーバー構成管理
apache2 ( Apache インストール ) apache2_conf ( Apache 設定 )
ntp ( NTP インストール ) ntp_conf ( NTP 設定 ) etc.
様々なソフトウェアのインストールと設定を組み合わせ、 サービスが提供可能なサーバーを作り上げるを Ansible の Role で表現するものであ ると考えている。
「インストールしてから設定する」を Ansible では Role Dependencies で表現でき る。 cat << EOF
> apache2_conf/meta/main.yml --- dependencies: - role: apache2 EOF https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html# role-dependencies
Role を分割することで見えてくるもの
ソフトウェアをインストールする Role は、サーバー固有ではないので、再利用でき る。
Role を再利用可能な状態にしておくことで、そのサーバー固有の設定だけに注力すれ ばよくなる。
Role の再利用性の実例
Ansible の記事や本などで、「Role の再利用性」というものをよく目にするが、 Role が再利用されると実際どのようなことが起きるのかを例で示す。
サーバー固有の Role は 2 つ ( 水色は再利用している Ansible Role )
サーバー固有の Role は無し 再利用できる状態にしていた Role のみでサーバーが構成できている。
まとめ
サーバー構築は、様々なソフトウェアのインストールと設定を組み合わせ、サービス が提供可能なサーバーを作り上げるという行為である。
Ansible で、ソフトウェアのインストール、設定をそれぞれ Role に分割し、これらを 組み合わせることでサーバーを構成する。
Role を再利用可能な状態にしておくことで、そのサーバー固有の設定だけに注力すれ ばよくなる。
Role の再利用性を高めておくと、最終的には Role を組み合わせるだけの状態にな る。
サーバーの構成管理について非常に秀逸なコメントをしているものがあるので、最後 に紹介する。 実際のコメント https://twitter.com/inoryo/status/1115248088963145728 自分の考え https://twitter.com/zinrai/status/1115768141529747456
自分達のサーバーインフラと向き合い構成管理が辛くない方向に持っていくことが必 須である。
おわり