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
TerraformとJenkinsによる外形監視管理の自動化
Search
gree_tech
PRO
July 08, 2019
Technology
0
250
TerraformとJenkinsによる外形監視管理の自動化
「Battle Conference Under30」で発表された資料です。
https://bcu30.jp/2019/
gree_tech
PRO
July 08, 2019
Tweet
Share
More Decks by gree_tech
See All by gree_tech
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
480
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
240
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
230
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
200
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
250
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
470
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
280
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
340
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
500
Other Decks in Technology
See All in Technology
テストアーキテクチャ設計で実現する高品質で高スピードな開発の実践 / Test Architecture Design in Practice
ropqa
3
470
APIファーストで実現する運用性の高い IoT プラットフォーム: SORACOMのアプローチ
soracom
PRO
0
200
自動テストの世界に、この5年間で起きたこと
autifyhq
2
3.3k
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
15
4.8k
optfit engineer culture deck
optfit
0
190
日経電子版 x AIエージェントの可能性とAgentic RAGによって提案書生成を行う技術
masahiro_nishimi
1
250
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
8
3.3k
All you need to know about InnoDB Primary Keys
lefred
0
110
地方企業がクラウドを活用するヒント
miu_crescent
PRO
1
130
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.1k
Classmethod AI Talks(CATs) #15 司会進行スライド(2025.02.06) / classmethod-ai-talks-aka-cats_moderator-slides_vol15_2025-02-06
shinyaa31
0
150
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1367
200k
Practical Orchestrator
shlominoach
186
10k
Scaling GitHub
holman
459
140k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
The Invisible Side of Design
smashingmag
299
50k
Documentation Writing (for coders)
carmenintech
67
4.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Adopting Sorbet at Scale
ufuk
74
9.2k
A Philosophy of Restraint
colly
203
16k
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
TerraformとJenkinsによる 外形監視管理の自動化 2019/07/06 グリー株式会社 李 一凡 @Bcu30
・李 一凡 ( YIFAN LI ) ・2015年~来日 ・2018年にグリー新卒入社 ・インフラ部サービスインストレーション チーム所属
自己紹介 ・普段の仕事: インフラの運用 RDBMS Monitoring ・最近の趣味 Goを書くこと
モニタリング サービス利用者視点 ・サービスが使えるか サービス管理者視点 ・メトリクス ・ログ ・プロセスの死活 ・サービスの正常性を監視して問題を特定するシステム
外形監視(Synthetics)とは ・ユーザーアクセスをシミュレートして、定期的に、外部公開してい るURLに対してリクエストを送り、レスポンスタイムとステータス コードをチェックすること 内部監視 外形監視 サービス
グリー外形監視ツールの世代交代 旧 新 内製の外形監視サービス ・OSやミドルウェアのバージョン アップでメンテの手間がかかる ・(AWS EC2) 監視経路は一経 路だけのため、誤検知しやすい
外製の外形監視サービス ・メンテの手間がなくなる ・マルチ経路、誤検知しにくい
外形監視サービス
外形監視サービス 無料でも使える REST API 基本的な監視機能完備 (PRO PLAN) SSL証明書期限の監視
導入課題 uptimerobotはSSO (シングルサインオン) 機能がない ・web consoleにログインできるのは1ユーザーしかない ・共有のpasswordを使い回すのは嫌 300程の監視URLがある ・APIから一括設定したい ・変更記録を残したい
Terraform Terraformの概念 ・Infrastructure As Code Terraformのコンポーネント ・Config ・HCL、JSON ・Provider ・各プラットフォームと通信する
・AWS、GCP、AZUREなど ・tf.state ・状態ファイル Terraformのworkflow Code Plan Apply コードを書く 変更を確認 変更を反映
Terraform uptimerobotのprovider ・https://github.com/louy/terraform-provider-uptimerobot ・自社の運用に合わせて機能を拡張している
Terraformのmodule Terraformのmodule ・設定ファイルをmodule化にする 各moduleをloadする 共通のalter通知先の設定 alter通知先idをexposeする monitorの設定 monitor設定に必要な 変数 access
keyなどの変数
CI ( Continuous Integration ) コードがあれば自動化ができる!! ・CIはJenkinsを使っている Jenkinsにやってほしいこと ・git pull
requestが出されたら ・terraform validate:syntaxチェック ・terraform plan: 実行計画の確認 ・masterブランチにmergeされたら ・terraform apply: 本番に反映 ・api keyを管理する
最終構成
運用上の問題点 ・(uptimerobot) http status codeが3xxの時、リダイレクト先まで辿り着く ・問題となるエンドポイントはパッと分からない ・アラートの自動確認仕組みを入れたい ・(uptimerobot) status pageは検索機能がない
・CLIツールを作りました ・簡単に設定を確認することができる。 ・https://github.com/c-bata/go-prompt
まとめ 今までやったこと: ・外形監視サービスの選定 ・TerraformとJenkinsで自動化管理の実装 今後にやりたいこと: ・アラートの自動対応 ・uptimerobotのprometheus exporterを試したい ・https://github.com/maaruhoshi/uptimerobot-prometheus-exporter
ありがとうございました!