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
460
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
180
テキスト化した「チケット駆動開発がまわりはじめるまでの取り組み」の紹介/okr-tidd-case-intro
zinrai
1
1.6k
チケット駆動開発がまわりはじめるまでの取り組み/okr-tidd-case
zinrai
10
5.4k
mail_service_unittest
zinrai
1
190
vyos_mtg3_vxlan_lt
zinrai
0
220
freebsd_shellscript_install
zinrai
1
180
debian_shellscript_install
zinrai
0
270
Other Decks in Technology
See All in Technology
OAuth/OpenID Connectで実現するMCPのセキュアなアクセス管理
kuralab
5
860
OpenHands🤲にContributeしてみた
kotauchisunsun
0
150
初めてのAzure FunctionsをClaude Codeで作ってみた / My first Azure Functions using Claude Code
hideakiaoyagi
1
180
20250623 Findy Lunch LT Brown
3150
0
780
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全
opelab
9
2.2k
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
380
本当に使える?AutoUpgrade の新機能を実践検証してみた
oracle4engineer
PRO
1
120
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
280
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
2
390
原則から考える保守しやすいComposable関数設計
moriatsushi
3
500
2025/6/21 日本学術会議公開シンポジウム発表資料
keisuke198619
2
480
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
220
Featured
See All Featured
Scaling GitHub
holman
459
140k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
A Modern Web Designer's Workflow
chriscoyier
693
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Fireside Chat
paigeccino
37
3.5k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
41
7.3k
Faster Mobile Websites
deanohume
307
31k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
Git: the NoSQL Database
bkeepers
PRO
430
65k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Become a Pro
speakerdeck
PRO
28
5.4k
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
自分達のサーバーインフラと向き合い構成管理が辛くない方向に持っていくことが必 須である。
おわり