SlideShare ist ein Scribd-Unternehmen logo
1 von 27
チケット駆動のサーバ/インフラ運用に おける問題点と手動作業の自動化 
Aug/24/2014 
Masato Igeta 
Global Operations Department, Rakuten Inc.
2 
Agenda 
1 
2 
背景 
問題点 
3 
4 
5 
6 
7 
目的 
提案と実装 
期待される効果 
今後の課題 
まとめ
背景 
組織、業務内容、Jira化施策、インフラの流れ
4 
背景1 – 組織 
•組織(自部署はインフラ運用部署) 
•自部署担当サービス 
–Infoseek、楽天オークションなど数十サービス 
–市場やトラベル等は別の運用グループが存在 
•規模感 
–サーバ1000クラスタ(開発, 検証, 本番)、2300台程度 
–ドメイン数:400弱 
•チームのミッション 
–根本的な流れを変えるよりその流れにいかに乗るかがテーマ 
事業部 
APP 
SYS(ここ) 
基盤(NW、監視、Iaas…)
5 
背景2 – 業務内容 
•主な業務は依頼作業とアラート対応 
– 
–依頼窓口が存在しタスクは チケット管理 
–SYS作業者がアサインされて実施 
•サーバに対して作業だけが業務ではない 
–依頼元の要望から具体的な作業を確定 
–ドキュメントは で管理 
依頼 / アラート 
手順書等準備 
作業
6 
背景3 – Jira化施策 
•アラートをJira管理 
–休日/夜間に発生したが翌営業日対応を対象 
–アラートメールを集計し、Jiraでチケットを起票 
–自動で担当者に割り当て 
•レビュー、共有をJiraで 
–メッセンジャー or メールを削減 
–確認したかどうかをステータス管理 
監視システム 
アラートメール 
メールサーバ 
アラート収集 
バッチサーバ 
Cron実行
7 
背景4 – インフラの流れ 
•chefで構成をコード化 
–infrastructure as code 
–構成をDSLで明記 
•DSL:ドメイン固有言語 
–作業の自動化 
–暗黙知をなくす 
# nginxをインストール 
package "nginx" do 
action :install 
end 
# nginxを起動しサービスを有効 
service "nginx" do 
action [ :enable, :start ] 
end 
要望 
DSLを記述 
サーバ状態を 
DSLの状態に
問題点 
完全自動化は困難、作業前業務が多い
9 
問題点1-1 – 完全自動化は困難 
•組織の細分化が障壁に 
–依頼元、関係部署は別部署 
•社内標準、他部署承認 
–調整コスト、ワークフローが膨大 
•現状 
–人が間に入って調整 
–開発部全体としての改善を進める必要
10 
問題点1-2 – 完全自動化は困難 
•インフラの完全なコード(chef)化は困難 
–すでに秘伝のタレ化 
–今までは手作業で作業 
–外から買ったりで各クラスタで設定が多種多様 
•現状 
–運用じゃなくて構築が現実的(実施中) 
–一部固有作業等のツール化(アカウント作成等)
11 
問題点2-1 – 作業前業務が多い 
•依頼例:webサーバに新サブドメインを追加 
–作業:DNS登録、監視登録、apache設定作業等 
–他部署連携多数 
•ドメイン承認、DNS作業承認、監視設定ツール 
•社内ツール用ドメインなら連携用設定依頼 
•チケットの粒度と完了条件が不明瞭 
–実際の要望、サーバの状態? 申請いる? 標準? 
–事前のタスク洗い出しが必要
12 
問題点2-2 – 作業前業務が多い 
•ナレッジマネジメントが充実していない 
–運用ルール、手順書等が簡単に纏まっている程度 
–具体的に何をすればいいか判断が困難な場合も 
•過去の依頼参考に経験でカバー 
–業務の暗黙知化 
•ドキュメントが存在すればいいわけでもない 
–最新か?、形式が不明瞭(メモ書きレベル)
目的 
作業前業務が多い問題に注目し、業務コスト削減と安心を
14 
目的 – 業務コスト削減と安心を 
•作業前の「何をすればいいか(準備)」を仕組み化 
–実際の作業は1サーバなら数分で対象は数台程度 
–作業の自動化は基盤グループに 
•プル型ではなくプッシュ型で通知 
–情報がどこあるかが自律的にまとまる仕組みが必要 
–チームとして得た経験値をチームとして享受 
作業前業務をスムーズに実施するためのナレッジマネジメントを
提案と実装 
暗黙知なサーバ作業前業務をチケット化
16 
提案と実装1 –作業前業務のDSLと実行系 
•DSLとして作業前業務をコード化 
–Chefのようにコード化して暗黙知をなくす 
–内容はTODO、手順書、コマンド結果、特殊仕様 
–粒度は他部署インフラエンジニアがわかる水準 
•DSLを依頼Jiraにサブチケット化 
–Jiraにすれにある作業前ノウハウを添付 
依頼 
DSL 
(過去知見から 
事前作成) 
作業前業務 
サーバ作業
17 
提案と実装2 –作業前業務のDSLと実行系 
•yamlでタスク記載 
–リンク先stash(社内github)上に内容記載 
•添付されたJira上サブタスク 
mount: component: "SVR_MOUNT" sub_tasks: todo: https://stash/hoge1 operation_sheet: https://stash/hoge2 command : https://stash/hoge3 specific_info: https://stash/hoge4 
*check showmount *do develop, staging env *check by APP *do production env *check by APP 
[dev,stg] 
https://stash/ope_sheet/ 
mount_dev_stg.sh 
[pro] 
https://stash/ope_sheet/ 
mount.sh
18 
提案と実装3 –作業前業務のDSLと実行系 
•実装 
–Python製バッチ、Jira API 
–依頼Jiraを定期クローリング 
–作業前タスクは各カテゴリごと付与 
バッチサーバ 
Cron実行 
未クロールチケット一覧を取得 
依頼カテゴリごとyamlからサブチケット付与 
コンテンツはstashから取得
期待される効果 
効果は測定中
20 
期待される効果 
•プッシュ型の利点 
–資料を探すコストを軽減 
–正しい資料がどれか明白に(更新対象確認も) 
–社内標準の担保 
•ドキュメントの可読性、保守性向上 
–DSL化で予め情報の形式が予測可能 
–足りなければドキュメントを足すべきと判断可能 
–ドキュメントの目的が明確化
今後の課題 
提案手法の継続、依頼・作業・アラート対応での改善
22 
今後の課題1 – 提案手法の継続性 
•実際の業務コスト減をモニタリング 
•DSLの最適化 
–DSLの文法/内容をチームに合わせて最適化 
–既存資料へのアクセスログ解析 
–チームメンバーへヒアリング 
•DSLのメンテナンス継続性を確保 
–メンテナンスルールを定義 
–更新を評価
23 
今後の課題2 – 作業の改善 
•作業完全自動化が可能になった場合 
–本提案のDSLから上記ツールへのDSL生成 
–ヒューマンループが必要な箇所を洗い出す 
•既存作業を可能な依頼種類は自動化 
–アカウント作成等はすでに実施 
–少しずつコード化された世界へ
24 
今後の課題3 – 依頼の改善 
•依頼フォームUIの改善 
–サーバ名等の入力サポート 
–設定変更の場合は現状設定を表示 
•依頼項目の最適化 
–過去依頼から追加確認項目を列挙 
–現状カバーできていない確認事項を洗い出し
25 
今後の課題4 – アラート対応の改善 
•リアルタイムアラート対応 
–Hipchat(メッセンジャー)連携 
–Asterisk(電話)連携 
–Jiraでもチケット発行 
–自動で関係部署へ連絡 
–対応手順も自動付与
まとめ
27 
まとめ 
•背景 
–インフラでのチケット駆動運用を実施中 
–サーバ作業前業務が多い 
•目的と提案 
–作業前の業務コストの軽減サポートを目的 
–作業前の業務をDSLとして明文化 
–Jiraにそれをサブタスクとして付与し作業者が実行 
•今後 
–効果測定と継続性を高めるための施策が必要 
–依頼や作業段階でも自動化を推進

Weitere ähnliche Inhalte

Was ist angesagt?

SAP HANA on AWS - Feb, 2014
SAP HANA on AWS - Feb, 2014SAP HANA on AWS - Feb, 2014
SAP HANA on AWS - Feb, 2014
Matsumoto Hiroki
 
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
Insight Technology, Inc.
 

Was ist angesagt? (20)

クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
 
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
 
[db tech showcase Tokyo 2017] E21: InfluxDB+αで時系列データの異常検知を可視化してみた by 株式会社インサイ...
[db tech showcase Tokyo 2017] E21: InfluxDB+αで時系列データの異常検知を可視化してみた by 株式会社インサイ...[db tech showcase Tokyo 2017] E21: InfluxDB+αで時系列データの異常検知を可視化してみた by 株式会社インサイ...
[db tech showcase Tokyo 2017] E21: InfluxDB+αで時系列データの異常検知を可視化してみた by 株式会社インサイ...
 
2017/7/25 SAP on AWS 長期運用事例セミナー(AWS資料)
2017/7/25 SAP on AWS 長期運用事例セミナー(AWS資料)2017/7/25 SAP on AWS 長期運用事例セミナー(AWS資料)
2017/7/25 SAP on AWS 長期運用事例セミナー(AWS資料)
 
[db tech showcase Tokyo 2017] B22: DevOpsにおけるDelphix(デルフィックス)by Delphix Softw...
[db tech showcase Tokyo 2017] B22: DevOpsにおけるDelphix(デルフィックス)by Delphix Softw...[db tech showcase Tokyo 2017] B22: DevOpsにおけるDelphix(デルフィックス)by Delphix Softw...
[db tech showcase Tokyo 2017] B22: DevOpsにおけるDelphix(デルフィックス)by Delphix Softw...
 
Zabbix-OSC-Fukuoka
Zabbix-OSC-FukuokaZabbix-OSC-Fukuoka
Zabbix-OSC-Fukuoka
 
Osc 2021 fall_tis_変化に強いチーム育成のための取り組み紹介
Osc 2021 fall_tis_変化に強いチーム育成のための取り組み紹介Osc 2021 fall_tis_変化に強いチーム育成のための取り組み紹介
Osc 2021 fall_tis_変化に強いチーム育成のための取り組み紹介
 
OSC2018Tokyo/Fall 自律的運用に向けた第一歩(OpsBear取り組み紹介)
OSC2018Tokyo/Fall 自律的運用に向けた第一歩(OpsBear取り組み紹介)OSC2018Tokyo/Fall 自律的運用に向けた第一歩(OpsBear取り組み紹介)
OSC2018Tokyo/Fall 自律的運用に向けた第一歩(OpsBear取り組み紹介)
 
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
 
SAP HANA on AWS - Feb, 2014
SAP HANA on AWS - Feb, 2014SAP HANA on AWS - Feb, 2014
SAP HANA on AWS - Feb, 2014
 
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
 
WFSの認証基盤SDKのセキュリティーに関する取り組み
WFSの認証基盤SDKのセキュリティーに関する取り組みWFSの認証基盤SDKのセキュリティーに関する取り組み
WFSの認証基盤SDKのセキュリティーに関する取り組み
 
Cloud Foundry x Wagby
Cloud Foundry x WagbyCloud Foundry x Wagby
Cloud Foundry x Wagby
 
非SAPの人に贈るSAP on AWS
非SAPの人に贈るSAP on AWS非SAPの人に贈るSAP on AWS
非SAPの人に贈るSAP on AWS
 
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
 
Serverless Meetup Japan Virtual #6
Serverless Meetup Japan Virtual #6Serverless Meetup Japan Virtual #6
Serverless Meetup Japan Virtual #6
 
これからのインフラエンジニアについて考えていること
これからのインフラエンジニアについて考えていることこれからのインフラエンジニアについて考えていること
これからのインフラエンジニアについて考えていること
 
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
[db tech showcase Tokyo 2016] A35: NVMe徹底検証 by 株式会社インサイトテクノロジー 平間 大輔
 
クラウド概要 by Engine Yard
クラウド概要 by Engine Yardクラウド概要 by Engine Yard
クラウド概要 by Engine Yard
 
サーバーサイド技術者不足に効くChef
サーバーサイド技術者不足に効くChefサーバーサイド技術者不足に効くChef
サーバーサイド技術者不足に効くChef
 

Andere mochten auch

オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
マジセミ by (株)オープンソース活用研究所
 

Andere mochten auch (19)

E-commerce企業におけるビッグデータ活用の取り組みと今後の展望
E-commerce企業におけるビッグデータ活用の取り組みと今後の展望E-commerce企業におけるビッグデータ活用の取り組みと今後の展望
E-commerce企業におけるビッグデータ活用の取り組みと今後の展望
 
Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供
 
Redmine導入記
Redmine導入記Redmine導入記
Redmine導入記
 
iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流
 
オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
オープンソースのOTRSで、ITIL準拠の運用管理ができるって、本当ですか?どこから始めればよいですか?OTRS勉強会
 
Rakuten Redmine
Rakuten RedmineRakuten Redmine
Rakuten Redmine
 
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
Bare Metal Provisioning for Big Data - OpenStack最新情報セミナー(2016年12月)
 
The Quality Gatekeeper Rakuten Travel QA
The Quality Gatekeeper Rakuten Travel QAThe Quality Gatekeeper Rakuten Travel QA
The Quality Gatekeeper Rakuten Travel QA
 
Introduction to Mindfulness
Introduction to MindfulnessIntroduction to Mindfulness
Introduction to Mindfulness
 
Intro to GraphQL
 Intro to GraphQL Intro to GraphQL
Intro to GraphQL
 
Creating a team of DevOps “Super Sentai”
Creating a team of DevOps “Super Sentai”Creating a team of DevOps “Super Sentai”
Creating a team of DevOps “Super Sentai”
 
Rakuten Ichiba_Rakuten Technology Conference 2016
Rakuten Ichiba_Rakuten Technology Conference 2016Rakuten Ichiba_Rakuten Technology Conference 2016
Rakuten Ichiba_Rakuten Technology Conference 2016
 
楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ
 
USING VISION SENSORS FOR INNOVATIVE HCI
USING VISION SENSORS FOR INNOVATIVE HCIUSING VISION SENSORS FOR INNOVATIVE HCI
USING VISION SENSORS FOR INNOVATIVE HCI
 
Huge Enterprise Systems Architecture Design with Java EE
Huge Enterprise Systems Architecture Design with Java EEHuge Enterprise Systems Architecture Design with Java EE
Huge Enterprise Systems Architecture Design with Java EE
 
楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関して楽天トラベルの開発プロセスに関して
楽天トラベルの開発プロセスに関して
 
あらためて考える、これからの仮想化インフラのためのデータセンター
あらためて考える、これからの仮想化インフラのためのデータセンターあらためて考える、これからの仮想化インフラのためのデータセンター
あらためて考える、これからの仮想化インフラのためのデータセンター
 
IBM Watson Question-Answering System and Cognitive Computing
IBM Watson Question-Answering System and Cognitive ComputingIBM Watson Question-Answering System and Cognitive Computing
IBM Watson Question-Answering System and Cognitive Computing
 
Sora Raku (Rakuten Drone Project)
Sora Raku (Rakuten Drone Project)Sora Raku (Rakuten Drone Project)
Sora Raku (Rakuten Drone Project)
 

Ähnlich wie チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化

20120405 setsunaセミナー
20120405 setsunaセミナー20120405 setsunaセミナー
20120405 setsunaセミナー
Takahiro Iwase
 
将来必要となるエンジニアのスキルについて考える Ver3
将来必要となるエンジニアのスキルについて考える Ver3将来必要となるエンジニアのスキルについて考える Ver3
将来必要となるエンジニアのスキルについて考える Ver3
Hiroshi Oyamada
 
Data Center As A Computer 2章前半
Data Center As A Computer 2章前半Data Center As A Computer 2章前半
Data Center As A Computer 2章前半
Akinori YOSHIDA
 

Ähnlich wie チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化 (20)

チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化
チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化
チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化
 
Hinemosによるクラウド運用管理の最新情報
Hinemosによるクラウド運用管理の最新情報Hinemosによるクラウド運用管理の最新情報
Hinemosによるクラウド運用管理の最新情報
 
Snowflake Architecture and Performance
Snowflake Architecture and PerformanceSnowflake Architecture and Performance
Snowflake Architecture and Performance
 
Oracle設計
Oracle設計Oracle設計
Oracle設計
 
Msセミナー20170830 slideshare
Msセミナー20170830 slideshareMsセミナー20170830 slideshare
Msセミナー20170830 slideshare
 
Osc2013 spring OpenStackで実現する分散ストレージ「Swift」とプライベートクラウド
Osc2013 spring OpenStackで実現する分散ストレージ「Swift」とプライベートクラウドOsc2013 spring OpenStackで実現する分散ストレージ「Swift」とプライベートクラウド
Osc2013 spring OpenStackで実現する分散ストレージ「Swift」とプライベートクラウド
 
Demo kuchino share
Demo kuchino shareDemo kuchino share
Demo kuchino share
 
今日から始めるDigitalOcean
今日から始めるDigitalOcean今日から始めるDigitalOcean
今日から始めるDigitalOcean
 
経済学のための実践的データ分析 5.特許データの分析
経済学のための実践的データ分析 5.特許データの分析経済学のための実践的データ分析 5.特許データの分析
経済学のための実践的データ分析 5.特許データの分析
 
Application Development Oveview
Application Development OveviewApplication Development Oveview
Application Development Oveview
 
Zabbix-jp study #4 20111020 session2
Zabbix-jp study #4 20111020 session2Zabbix-jp study #4 20111020 session2
Zabbix-jp study #4 20111020 session2
 
プログラムの大海に溺れないために
プログラムの大海に溺れないためにプログラムの大海に溺れないために
プログラムの大海に溺れないために
 
Questetra ハンズオンセミナー 業務プロセス設計 ステップアップ編 2014/10/15
Questetra ハンズオンセミナー 業務プロセス設計 ステップアップ編 2014/10/15Questetra ハンズオンセミナー 業務プロセス設計 ステップアップ編 2014/10/15
Questetra ハンズオンセミナー 業務プロセス設計 ステップアップ編 2014/10/15
 
20120405 setsunaセミナー
20120405 setsunaセミナー20120405 setsunaセミナー
20120405 setsunaセミナー
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
オフィスクラウド企画書
オフィスクラウド企画書オフィスクラウド企画書
オフィスクラウド企画書
 
経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめ経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめ
 
将来必要となるエンジニアのスキルについて考える Ver3
将来必要となるエンジニアのスキルについて考える Ver3将来必要となるエンジニアのスキルについて考える Ver3
将来必要となるエンジニアのスキルについて考える Ver3
 
Data Center As A Computer 2章前半
Data Center As A Computer 2章前半Data Center As A Computer 2章前半
Data Center As A Computer 2章前半
 

Mehr von Rakuten Group, Inc.

Mehr von Rakuten Group, Inc. (20)

コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
 
楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のり楽天における安全な秘匿情報管理への道のり
楽天における安全な秘匿情報管理への道のり
 
What Makes Software Green?
What Makes Software Green?What Makes Software Green?
What Makes Software Green?
 
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
 
DataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組みDataSkillCultureを浸透させる楽天の取り組み
DataSkillCultureを浸透させる楽天の取り組み
 
大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開大規模なリアルタイム監視の導入と展開
大規模なリアルタイム監視の導入と展開
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用
 
楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャー楽天サービスを支えるネットワークインフラストラクチャー
楽天サービスを支えるネットワークインフラストラクチャー
 
楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割楽天の規模とクラウドプラットフォーム統括部の役割
楽天の規模とクラウドプラットフォーム統括部の役割
 
Rakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdfRakuten Services and Infrastructure Team.pdf
Rakuten Services and Infrastructure Team.pdf
 
The Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdfThe Data Platform Administration Handling the 100 PB.pdf
The Data Platform Administration Handling the 100 PB.pdf
 
Supporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdfSupporting Internal Customers as Technical Account Managers.pdf
Supporting Internal Customers as Technical Account Managers.pdf
 
Making Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdfMaking Cloud Native CI_CD Services.pdf
Making Cloud Native CI_CD Services.pdf
 
How We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdfHow We Defined Our Own Cloud.pdf
How We Defined Our Own Cloud.pdf
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
 
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech infoTravel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
 
OWASPTop10_Introduction
OWASPTop10_IntroductionOWASPTop10_Introduction
OWASPTop10_Introduction
 
Introduction of GORA API Group technology
Introduction of GORA API Group technologyIntroduction of GORA API Group technology
Introduction of GORA API Group technology
 
100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情100PBを越えるデータプラットフォームの実情
100PBを越えるデータプラットフォームの実情
 
社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャー社内エンジニアを支えるテクニカルアカウントマネージャー
社内エンジニアを支えるテクニカルアカウントマネージャー
 

チケット駆動のサーバ/インフラ運用における問題点と手動作業の自動化

  • 2. 2 Agenda 1 2 背景 問題点 3 4 5 6 7 目的 提案と実装 期待される効果 今後の課題 まとめ
  • 4. 4 背景1 – 組織 •組織(自部署はインフラ運用部署) •自部署担当サービス –Infoseek、楽天オークションなど数十サービス –市場やトラベル等は別の運用グループが存在 •規模感 –サーバ1000クラスタ(開発, 検証, 本番)、2300台程度 –ドメイン数:400弱 •チームのミッション –根本的な流れを変えるよりその流れにいかに乗るかがテーマ 事業部 APP SYS(ここ) 基盤(NW、監視、Iaas…)
  • 5. 5 背景2 – 業務内容 •主な業務は依頼作業とアラート対応 – –依頼窓口が存在しタスクは チケット管理 –SYS作業者がアサインされて実施 •サーバに対して作業だけが業務ではない –依頼元の要望から具体的な作業を確定 –ドキュメントは で管理 依頼 / アラート 手順書等準備 作業
  • 6. 6 背景3 – Jira化施策 •アラートをJira管理 –休日/夜間に発生したが翌営業日対応を対象 –アラートメールを集計し、Jiraでチケットを起票 –自動で担当者に割り当て •レビュー、共有をJiraで –メッセンジャー or メールを削減 –確認したかどうかをステータス管理 監視システム アラートメール メールサーバ アラート収集 バッチサーバ Cron実行
  • 7. 7 背景4 – インフラの流れ •chefで構成をコード化 –infrastructure as code –構成をDSLで明記 •DSL:ドメイン固有言語 –作業の自動化 –暗黙知をなくす # nginxをインストール package "nginx" do action :install end # nginxを起動しサービスを有効 service "nginx" do action [ :enable, :start ] end 要望 DSLを記述 サーバ状態を DSLの状態に
  • 9. 9 問題点1-1 – 完全自動化は困難 •組織の細分化が障壁に –依頼元、関係部署は別部署 •社内標準、他部署承認 –調整コスト、ワークフローが膨大 •現状 –人が間に入って調整 –開発部全体としての改善を進める必要
  • 10. 10 問題点1-2 – 完全自動化は困難 •インフラの完全なコード(chef)化は困難 –すでに秘伝のタレ化 –今までは手作業で作業 –外から買ったりで各クラスタで設定が多種多様 •現状 –運用じゃなくて構築が現実的(実施中) –一部固有作業等のツール化(アカウント作成等)
  • 11. 11 問題点2-1 – 作業前業務が多い •依頼例:webサーバに新サブドメインを追加 –作業:DNS登録、監視登録、apache設定作業等 –他部署連携多数 •ドメイン承認、DNS作業承認、監視設定ツール •社内ツール用ドメインなら連携用設定依頼 •チケットの粒度と完了条件が不明瞭 –実際の要望、サーバの状態? 申請いる? 標準? –事前のタスク洗い出しが必要
  • 12. 12 問題点2-2 – 作業前業務が多い •ナレッジマネジメントが充実していない –運用ルール、手順書等が簡単に纏まっている程度 –具体的に何をすればいいか判断が困難な場合も •過去の依頼参考に経験でカバー –業務の暗黙知化 •ドキュメントが存在すればいいわけでもない –最新か?、形式が不明瞭(メモ書きレベル)
  • 14. 14 目的 – 業務コスト削減と安心を •作業前の「何をすればいいか(準備)」を仕組み化 –実際の作業は1サーバなら数分で対象は数台程度 –作業の自動化は基盤グループに •プル型ではなくプッシュ型で通知 –情報がどこあるかが自律的にまとまる仕組みが必要 –チームとして得た経験値をチームとして享受 作業前業務をスムーズに実施するためのナレッジマネジメントを
  • 16. 16 提案と実装1 –作業前業務のDSLと実行系 •DSLとして作業前業務をコード化 –Chefのようにコード化して暗黙知をなくす –内容はTODO、手順書、コマンド結果、特殊仕様 –粒度は他部署インフラエンジニアがわかる水準 •DSLを依頼Jiraにサブチケット化 –Jiraにすれにある作業前ノウハウを添付 依頼 DSL (過去知見から 事前作成) 作業前業務 サーバ作業
  • 17. 17 提案と実装2 –作業前業務のDSLと実行系 •yamlでタスク記載 –リンク先stash(社内github)上に内容記載 •添付されたJira上サブタスク mount: component: "SVR_MOUNT" sub_tasks: todo: https://stash/hoge1 operation_sheet: https://stash/hoge2 command : https://stash/hoge3 specific_info: https://stash/hoge4 *check showmount *do develop, staging env *check by APP *do production env *check by APP [dev,stg] https://stash/ope_sheet/ mount_dev_stg.sh [pro] https://stash/ope_sheet/ mount.sh
  • 18. 18 提案と実装3 –作業前業務のDSLと実行系 •実装 –Python製バッチ、Jira API –依頼Jiraを定期クローリング –作業前タスクは各カテゴリごと付与 バッチサーバ Cron実行 未クロールチケット一覧を取得 依頼カテゴリごとyamlからサブチケット付与 コンテンツはstashから取得
  • 20. 20 期待される効果 •プッシュ型の利点 –資料を探すコストを軽減 –正しい資料がどれか明白に(更新対象確認も) –社内標準の担保 •ドキュメントの可読性、保守性向上 –DSL化で予め情報の形式が予測可能 –足りなければドキュメントを足すべきと判断可能 –ドキュメントの目的が明確化
  • 22. 22 今後の課題1 – 提案手法の継続性 •実際の業務コスト減をモニタリング •DSLの最適化 –DSLの文法/内容をチームに合わせて最適化 –既存資料へのアクセスログ解析 –チームメンバーへヒアリング •DSLのメンテナンス継続性を確保 –メンテナンスルールを定義 –更新を評価
  • 23. 23 今後の課題2 – 作業の改善 •作業完全自動化が可能になった場合 –本提案のDSLから上記ツールへのDSL生成 –ヒューマンループが必要な箇所を洗い出す •既存作業を可能な依頼種類は自動化 –アカウント作成等はすでに実施 –少しずつコード化された世界へ
  • 24. 24 今後の課題3 – 依頼の改善 •依頼フォームUIの改善 –サーバ名等の入力サポート –設定変更の場合は現状設定を表示 •依頼項目の最適化 –過去依頼から追加確認項目を列挙 –現状カバーできていない確認事項を洗い出し
  • 25. 25 今後の課題4 – アラート対応の改善 •リアルタイムアラート対応 –Hipchat(メッセンジャー)連携 –Asterisk(電話)連携 –Jiraでもチケット発行 –自動で関係部署へ連絡 –対応手順も自動付与
  • 27. 27 まとめ •背景 –インフラでのチケット駆動運用を実施中 –サーバ作業前業務が多い •目的と提案 –作業前の業務コストの軽減サポートを目的 –作業前の業務をDSLとして明文化 –Jiraにそれをサブタスクとして付与し作業者が実行 •今後 –効果測定と継続性を高めるための施策が必要 –依頼や作業段階でも自動化を推進