SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
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
ありがとうございました!

Contenu connexe

Tendances

【ヤマップ会社説明資料】Engineer's trailhead
【ヤマップ会社説明資料】Engineer's trailhead【ヤマップ会社説明資料】Engineer's trailhead
【ヤマップ会社説明資料】Engineer's trailhead
YAMAP
 
優れたデザインの 定義と思考方法
優れたデザインの 定義と思考方法優れたデザインの 定義と思考方法
優れたデザインの 定義と思考方法
Junichi Izumi
 

Tendances (20)

【ヤマップ会社説明資料】Engineer's trailhead
【ヤマップ会社説明資料】Engineer's trailhead【ヤマップ会社説明資料】Engineer's trailhead
【ヤマップ会社説明資料】Engineer's trailhead
 
サービスにおけるビジュアルデザインの役割
サービスにおけるビジュアルデザインの役割サービスにおけるビジュアルデザインの役割
サービスにおけるビジュアルデザインの役割
 
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
 
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
 
Web開発者が始める .NET MAUI Blazor App
Web開発者が始める .NET MAUI Blazor AppWeb開発者が始める .NET MAUI Blazor App
Web開発者が始める .NET MAUI Blazor App
 
datatech-jp Casual Talks#3 データエンジニアを採用するための試行錯誤
datatech-jp Casual Talks#3  データエンジニアを採用するための試行錯誤datatech-jp Casual Talks#3  データエンジニアを採用するための試行錯誤
datatech-jp Casual Talks#3 データエンジニアを採用するための試行錯誤
 
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみたOpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
 
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
【Unite Tokyo 2018】なんとっ!ユナイト!ミリシタをささえる『AKANE大作戦』とは?
 
「DX完全に理解した」「DXわけがわからないよ」なユーザ企業の方へ
「DX完全に理解した」「DXわけがわからないよ」なユーザ企業の方へ「DX完全に理解した」「DXわけがわからないよ」なユーザ企業の方へ
「DX完全に理解した」「DXわけがわからないよ」なユーザ企業の方へ
 
"Kong Summit, Japan 2022" カスタマーセッション:持続可能な店舗運営を支えるリテールテックとKongの利活用について
"Kong Summit, Japan 2022" カスタマーセッション:持続可能な店舗運営を支えるリテールテックとKongの利活用について"Kong Summit, Japan 2022" カスタマーセッション:持続可能な店舗運営を支えるリテールテックとKongの利活用について
"Kong Summit, Japan 2022" カスタマーセッション:持続可能な店舗運営を支えるリテールテックとKongの利活用について
 
エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略
 
プロダクトオーナーが知るべき97のこと
プロダクトオーナーが知るべき97のことプロダクトオーナーが知るべき97のこと
プロダクトオーナーが知るべき97のこと
 
優れたデザインの 定義と思考方法
優れたデザインの 定義と思考方法優れたデザインの 定義と思考方法
優れたデザインの 定義と思考方法
 
TypeScriptでCLIアプリケーション開発
TypeScriptでCLIアプリケーション開発TypeScriptでCLIアプリケーション開発
TypeScriptでCLIアプリケーション開発
 
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとはインフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
 
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイントそれを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
それを早く言ってよ〜パフォーマンスを出すエフェクト制作のポイント
 
リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方
 
グリーのセキュリティ戦略:組織改革成功の秘訣と新たな課題への取り組み
グリーのセキュリティ戦略:組織改革成功の秘訣と新たな課題への取り組みグリーのセキュリティ戦略:組織改革成功の秘訣と新たな課題への取り組み
グリーのセキュリティ戦略:組織改革成功の秘訣と新たな課題への取り組み
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
 
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス
 

Similaire à TerraformとJenkinsによる外形監視管理の自動化

20110929 クラウド連携において企業内ID管理基盤に求められるもの
20110929 クラウド連携において企業内ID管理基盤に求められるもの20110929 クラウド連携において企業内ID管理基盤に求められるもの
20110929 クラウド連携において企業内ID管理基盤に求められるもの
Naohiro Fujie
 
内部統制資料(Sox法)
内部統制資料(Sox法)内部統制資料(Sox法)
内部統制資料(Sox法)
Takahiro Kitajima
 
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
Cybozucommunity
 
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
Hinemos
 

Similaire à TerraformとJenkinsによる外形監視管理の自動化 (20)

Social GAME における AI 活用事例 [第 4 回 Google Cloud INSIDE Games & Apps]
Social GAME における AI 活用事例 [第 4 回 Google Cloud INSIDE Games & Apps] Social GAME における AI 活用事例 [第 4 回 Google Cloud INSIDE Games & Apps]
Social GAME における AI 活用事例 [第 4 回 Google Cloud INSIDE Games & Apps]
 
Base 20141011 1_for_slideshre
Base 20141011 1_for_slideshreBase 20141011 1_for_slideshre
Base 20141011 1_for_slideshre
 
手間をかけずにサービス監視する方法
手間をかけずにサービス監視する方法手間をかけずにサービス監視する方法
手間をかけずにサービス監視する方法
 
楽天のRPAプラットフォーム構築事例
楽天のRPAプラットフォーム構築事例楽天のRPAプラットフォーム構築事例
楽天のRPAプラットフォーム構築事例
 
監視ってなんだっけ?
監視ってなんだっけ?監視ってなんだっけ?
監視ってなんだっけ?
 
企画開発運用部門の協調とは
企画開発運用部門の協調とは企画開発運用部門の協調とは
企画開発運用部門の協調とは
 
IT投資のオペレーション・マネジメントの価値
IT投資のオペレーション・マネジメントの価値IT投資のオペレーション・マネジメントの価値
IT投資のオペレーション・マネジメントの価値
 
AIを取り巻く基準について
AIを取り巻く基準についてAIを取り巻く基準について
AIを取り巻く基準について
 
Jssm26_スライド公表用
Jssm26_スライド公表用Jssm26_スライド公表用
Jssm26_スライド公表用
 
20110929 クラウド連携において企業内ID管理基盤に求められるもの
20110929 クラウド連携において企業内ID管理基盤に求められるもの20110929 クラウド連携において企業内ID管理基盤に求められるもの
20110929 クラウド連携において企業内ID管理基盤に求められるもの
 
内部統制資料(Sox法)
内部統制資料(Sox法)内部統制資料(Sox法)
内部統制資料(Sox法)
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
超高速開発の基礎概念 20141119 0
超高速開発の基礎概念 20141119 0超高速開発の基礎概念 20141119 0
超高速開発の基礎概念 20141119 0
 
【HinemosWorld2015】B1-2_【入門】Hinemosではじめるシステム監視
【HinemosWorld2015】B1-2_【入門】Hinemosではじめるシステム監視【HinemosWorld2015】B1-2_【入門】Hinemosではじめるシステム監視
【HinemosWorld2015】B1-2_【入門】Hinemosではじめるシステム監視
 
cloud on the beach 前夜祭LT
cloud on the beach 前夜祭LTcloud on the beach 前夜祭LT
cloud on the beach 前夜祭LT
 
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
電通、リクルート、サントリーショッピングクラブ、有名企業がいち早く選んだ kintone を徹底解説
 
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
システム運用のデジタルトランスフォーメーションを実現する「Hinemos」
 
取り残されたIt未開の地
取り残されたIt未開の地取り残されたIt未開の地
取り残されたIt未開の地
 
Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119
 
グローバルクロール
グローバルクロールグローバルクロール
グローバルクロール
 

Plus de gree_tech

Plus de gree_tech (20)

アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
 
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
 
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
 
長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化
 
Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介
 
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
 
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現についてSINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
 
海外展開と負荷試験
海外展開と負荷試験海外展開と負荷試験
海外展開と負荷試験
 
翻訳QAでのテスト自動化の取り組み
翻訳QAでのテスト自動化の取り組み翻訳QAでのテスト自動化の取り組み
翻訳QAでのテスト自動化の取り組み
 
組み込み開発のテストとゲーム開発のテストの違い
組み込み開発のテストとゲーム開発のテストの違い組み込み開発のテストとゲーム開発のテストの違い
組み込み開発のテストとゲーム開発のテストの違い
 
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
 
データエンジニアとアナリストチーム兼務になった件について
データエンジニアとアナリストチーム兼務になった件についてデータエンジニアとアナリストチーム兼務になった件について
データエンジニアとアナリストチーム兼務になった件について
 
シェアドサービスとしてのデータテクノロジー
シェアドサービスとしてのデータテクノロジーシェアドサービスとしてのデータテクノロジー
シェアドサービスとしてのデータテクノロジー
 
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
 
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
 
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
 
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
 
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
 
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
 
基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-
基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-
基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-
 

TerraformとJenkinsによる外形監視管理の自動化