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
20160421 シェルスクリプトで作るコンフィグ管理サーバ
Search
Masaru Ogura
April 21, 2016
Technology
0
30
20160421 シェルスクリプトで作るコンフィグ管理サーバ
2016/4/21のJAWS-UG札幌の発表資料です。
Masaru Ogura
April 21, 2016
Tweet
Share
More Decks by Masaru Ogura
See All by Masaru Ogura
20251126 アウトプットの大切さについて
masaruogura
0
85
20250822 「AWS運用入門」で運用を体系的に学ぼう
masaruogura
0
57
20241218 私の気になる VPC 周りのアップデート
masaruogura
0
150
20240530 Backlogでスクラムを回してみよう
masaruogura
0
370
20240516 JAWS-UG 朝会 運営の裏側
masaruogura
1
240
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
310
20240329 第34回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
54
20240216 Amazon Linux 2 を 2023 に移行してみた
masaruogura
1
7.2k
20240202 第33回 JAWS-UG札幌勉強会 オープニング
masaruogura
0
46
Other Decks in Technology
See All in Technology
モノタロウ x クリエーションラインで実現する チームトポロジーにおける プラットフォームチーム・ ストリームアラインドチームの 効果的なコラボレーション
creationline
0
530
AI時代のアジャイルチームを目指して ー スクラムというコンフォートゾーンからの脱却 ー / Toward Agile Teams in the Age of AI
takaking22
11
5k
AI: The stuff that nobody shows you
jnunemaker
PRO
1
160
善意の活動は、なぜ続かなくなるのか ーふりかえりが"構造を変える判断"になった半年間ー
matsukurou
0
320
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
320
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
6
2.8k
「違う現場で格闘する二人」——社内コミュニティがつないだトヨタ流アジャイルの実践とその先
shinichitakeuchi
0
150
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
21k
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
170
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
480
202512_AIoT.pdf
iotcomjpadmin
0
180
Next.js 16の新機能 Cache Components について
sutetotanuki
0
210
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Making Projects Easy
brettharned
120
6.5k
Scaling GitHub
holman
464
140k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
160
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
2
78
How GitHub (no longer) Works
holman
316
140k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
40
Become a Pro
speakerdeck
PRO
31
5.8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
110
Transcript
シェルスクリプトで作る コンフィグ管理サーバ 2016/4/21 Thu 第18回 JAWS-UG札幌 勉強会
自己紹介 • 小倉 大 (おぐら まさる) • 株式会社スカイ365 • 元オンプレミスのネットワークエンジニア
• AWS歴 6か月 • 好きなAWSサービス : まだない
日々、オンプレミスでやっていたことをAWS で活用することができないかを考えています
オンプレミスでやっていた コンフィグ管理ってAWSでもできるかな
オンプレミスのコンフィグ管理 ネットワーク網 コンフィグ管理サーバ ルータ スイッチ ロードバランサ ファイアウォール ①コンフィグ管理サーバでスクリプトを実行し、定期的に ネットワーク機器全台のコンフィグを取得する ②コンフィグに差分があった場合は、メールを送信する
データセンター内 ① ②
コンフィグ管理をするメリット • 機器交換をする時に、コンフィグ管理サー バに保存してある最新のコンフィグから復 旧できる • 設定の変更箇所を確認できる • 意図しない設定変更を検知できる •
設定変更した内容が正しいか確認できる
これと同じようなことをAWSでやってみると
AWSのコンフィグ管理 Amazon Linux インターネット ① ①コンフィグ管理サーバでスクリプトを実行し、定期的に指 定したAWSアカウントのインスタンス等の情報を取得する ②コンフィグに差分があった場合は、Slackへ通知する ② コンフィグ
管理サーバ
スクリプトの動き 0. 各AWSアカウントでIAMユーザを作成し、 IAMユーザ情報を記載したファイルを用意 1. IAMユーザの情報をスクリプトに入力 2. AWS CLIの環境変数を設定 3.
AWS CLIのコマンドを実行 4. 差分があればSlackへ通知 あとは、AWSアカウントごとに2~4を繰り返す ※シェルスクリプトはGitHubに置いてあります https://github.com/MasaruOgura/shellscript/blob/master/getconfig.sh
スクリプトの動き(補足) 2. AWS CLIの環境変数を設定 export AWS_ACCESS_KEY_ID=xxxx export AWS_SECRET_ACCESS_KEY=yyyy export WS_DEFAULT_REGION=zzzz
export AWS_DEFAULT_OUTPUT=text AWS CLIのアウトプットは3種類 json, text, or table
スクリプトの動き(補足) 3. AWS CLIのコマンドを実行 EC2インスタンス一覧 aws ec2 describe-instances IAMユーザ一覧 aws
iam list-users セキュリティグループ一覧 aws ec2 describe-security-groups
スクリプトの動き(補足) 4. 差分があればSlackへ通知
AWSで同じようなサービスがあったような
AWS CloudTrail, AWS Config AWS CloudTrail AWSアカウントの操作をロギングす るサービスで、SNS(Simple Notification Service)で通知可能
AWS Config AWSリソースのインベントリを取得 し、リソースの設定履歴を監査、リ ソースの構成の変更を通知すること ができるフルマネージドサービス
単一のAWSアカウント向けで、 複数のAWSアカウントの一元管理には向いて いない と思います
まとめ 複数のAWSアカウントを運用には今回作成し たシェルスクリプトが利用できるかも
ご清聴ありがとうございました
Appendix 【AWS】CLIの初期設定について(認証情報とコマンド補完) http://www.task-notes.com/entry/20141026/1414322858 シェルスクリプトでtsvファイルとcsvファイルを処理する方法 http://millay-diary.info/blog/post-201/ 対象のディレクトリがなかったら作成するシェルスクリプトワンライナー http://qiita.com/yoccola/items/d4c346b74204d298166c Incoming WebHooksを使ってslackにPOSTするシェルスクリプト http://qiita.com/tiida26/items/9092245ad44cf7b20ef5
Appendix UNIXシェルスクリプトハンドブック http://www.amazon.co.jp/UNIX%E3%82%B7%E3%82%A7%E3% 83%AB%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E 3%83%88%E3%83%8F%E3%83%B3%E3%83%89%E3%83%96 %E3%83%83%E3%82%AF-Technical-handbook-001- %E9%96%A2%E6%A0%B9/dp/4797326522 GitHub(シェルスクリプトが置いてあるURL) https://github.com/MasaruOgura/shellscript/blob/master/getconfi g.sh