Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
コンパウンド戦略に向けた技術選定とリアーキテクチャ
kworkdev
PRO
1
3.8k
Entra ID の基礎(Japan Microsoft 365 コミュニティ カンファレンス 2024)
murachiakira
3
1.8k
Windows Server 2025 Pay as you Go ライセンスを試す
murachiakira
0
180
次のコンテナセキュリティの時代 - User Namespace With a Pod / CloudNative Days Winter 2024
pfn
PRO
4
380
Entra ID の多要素認証(Japan Microsoft 365 コミュニティ カンファレンス 2024 )
murachiakira
0
1.4k
CDCL による厳密解法を採用した MILP ソルバー
imai448
5
430
PFN Company Deck
pfn
PRO
2
130
クラウドネイティブなNewSQLで実現するミッションクリティカルなアプリケーションの運用
yuyu_hf
PRO
1
140
KotlinユーザのためのJSpecify入門 / JSpecify 101 for Kotlin Devs
eller86
0
200
Postman Flowsで作るAPI連携LINE Bot
miura55
0
210
GAS × Discord bot × Gemini で作ったさいきょーの情報収集ツール
ysknsid25
1
230
Kubernetes だけじゃない!Amazon ECS で実現するクラウドネイティブな GitHub Actions セルフホストランナー / CNDW2024
ponkio_o
PRO
6
390
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.3k
Side Projects
sachag
452
42k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
400
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
1
200
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Thoughts on Productivity
jonyablonski
67
4.3k
Agile that works and the tools we love
rasmusluckow
327
21k
Why Our Code Smells
bkeepers
PRO
334
57k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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
自分達のサーバーインフラと向き合い構成管理が辛くない方向に持っていくことが必 須である。
おわり