本資料は2015年6月23日時点のものです。今後、内容が大幅に変動する可能性があります。 本資料の内容は、運用設計ラボ合同会社の活動に基づくもので、全ての文責は運用設計ラボ合同会社に帰すべきものです。Read less
![「運用改善」を考える 〜「自動化」を考える前に](https://cdn-ak-scissors.b.st-hatena.com/image/square/35811add559fcd13b7de99b5c79920aca0207d01/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2F20150623-operation-kaizen-pub-150623075853-lva1-app6892-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
Image from Datadog はじめに こんにちは。エンジニアのみかみです。DevOpsを推進するための、ビルドツール、CI、監視系の設計や管理ツールの作成を担当しています。インフラエンジニアっぽいですが、実際はチーム内の困ったを拾うキャッチャーで、よろず相談屋をやっています。 さて、今回は監視についてのお話です。 最近、安価で柔軟に使えるクラウドサービスが提供され、新規サービスの開発が容易になりました。 しかし、サービスをリリースしたものの、ある程度サービスが認知されてくると突然システムが故障したり、予期せぬ不具合が突然発生し困ったことはないでしょうか? サービスの稼働率を100%保証することは技術的に難しく、サーバー稼働率99.9%を保証しているサービスが多いですが、この数字でも年に9時間は停止する計算になります。100%の動作保証が難しいのならば、何時停止したとしても、すぐに
自社で使用するシステムを開発する、とする。 このとき迂闊にやっていると、気付いたら過去に構築したシステムのメンテナンスにばかり時間をとられ、新しいコードがぜんぜん書けていない、という状況に陥ることがある。 こうなると地獄だ。新規の興味深いコードを書くなんてとんでもない、という状態になる。メンテナンスコストを下げるためのコードすら書けなくて永遠に悲惨な撤退戦を繰り返すことになる。絶対に避けなくてはならない。 ということで、自分が心掛けていることをざっと書く。 全く手を入れずに動き続ける状態を最初に作る もちろんシステムというものは生き物なので、ある程度のメンテナンスコストが必要になる。特に会社というものは生き物なのでシステム周囲の環境は常に変化する可能性がある。データ連携している別のシステムの仕様が変われば、当然そのデータを利用する側も対応しなければならない*1。 ということで、システムには
CDNが単一障害点にならないようにするために ヌーラボでは 2010 年 Cacoo の商用サービスの開始に合わせて AWS における運用を開始しました。当時、運用環境として AWS を採択する決め手の一つになったのが CloudFront でした。その後も着々とエッジロケーションは増え、独自ドメインのサポートなど魅力的な機能も提供され、今ではヌーラボの全サービスの静的ファイルの配信で利用している、無くてはならないサービスとなっています。 その魅力の反面、CloudFront の障害は、アプリケーションそのものに問題がなくても、以下のような表示が崩れた画面が表示されて、ユーザが全くサービスを使えなくなるという、その影響が非常に大きいものです。また障害の原因が DNS やネットワークの経路における問題といった、私たちが直接解決しにくい領域にあることもしばしばです。 ただ、どんな事情であれ、障
https://www.youtube.com/watch?v=B1Wt8s4LEfk 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 10/29に開催されたSecurity@Scaleのカンファレンスで、興味深いと思った話題を拾ってみました。 SquareのDiogo Monicaの講演は、障害/脆弱性に対応する社内システムをどのように自動化 / 最適化させてきたかというテーマ。 脆弱性の種別(XSS等) x セキュリティゾーン(システムのどの箇所にとって脅威になるかを3段階に分類。DBに近い方が危険性が高い。)でスコア化することで、対応のために発行されるチケットは自動的に優先付けされる。 SLA(サービスレベルアグリーメント)において、例えば、P0は24時間以内、P1は7日以内、P2は30日以内と
スクラムにあこがれて。 インフラで実践したチームビルディングそれはサバ天 from ume3_ カンバンをやってカイゼンをしたというお話です。 ここ1年ぐらいずーっとリーダーとして チームビルディングに勤しんでいた。 チームを強くするにはどうすればいいか? チームでわいわいやるにはどうすればいいか? 簡単な話、仕事ってどうやったら進むのか? それをつきつめていった結果、なぜか特異な結果が生まれた。 なんだこれは。 社内に共有したものをせっかくなのでこちらへ公開という流れです。 モザイク多いのは勘弁。 これでも、けっこう内容けずったのです。 やっていることは、ホワイトボードの前で付箋紙はってわいわいやっているだけ。 スライドでは説明不足ですが、サイクルがちゃんとあって ぐるぐる回すことでチームが加速化するのが狙い。 見える化の力を今も実感しています。 こういったフレームワークの活用からの発展
少し思うところがあったのでメモ。 ほぼ自己流なので、もっと良いのがあれば教えて欲しいところ。 そもそもマニュアルオペレーション(手作業)するな ごもっとも。でもやらないといけない深淵な事情があるんです。 事前条件と事後条件を明確にしておく どういう状態からどういう状態に変わるべきか事前に明確にしておくべきです。 それなしに普通は作業しません。 切り戻し手順を考えておく 途中でミスる可能性があるポイントを明確にしておくこと。 それぞれのタイミングでの切り戻し手順をしっかり考えておくこと 作業手順を事前に書く オペレーション中にアドホックに手順考えないですよね? 複数手順あるならスクリプト化する できる限りステップを減らします。可能ならスクリプトを一発叩くだけにします。 set -eu は付けた方がいい eオプションはコマンドのステータスコードが0以外(異常終了)したときに、その時点で終了して
"Monitoring Casual Talks #6"に参加して、「ヘビーなGraphite運用」についてしゃべってきた。 Graphite ここ数ヶ月ずっと運用してて、そこそこのリクエスト数さばけるようになるまでと冗長化の話をだいたいしてた。 Graphiteのパフォーマンス・チューニングで結構苦労してて、@sonots さんが発表されてた"GrowthForecast/RRDtool チューニング秘伝の書" がすごい参考になった。(Graphite(whisper) のデータ構造と RRdtool のデータ構造はよく似ている。) fadvise(2)とか知らなかった。 ぜひ試してみたい。 スライド 結構口頭で補足してた。Graphite 秘伝の書書きたい。 感想 今回の勉強会、かなり刺さる内容が揃っててよかった。 形式が30~100人くらいいて、数人の発表者がプレゼンするっていう感じ
2014年6月1日(日)、東京・渋谷マークシティにおいて、GitHubユーザグループ主催によるイベント「GitHub Kaigi」が開催されました。500人の定員に対し800人を超える参加申し込みのあったこのイベントには、日本におけるGitHub活用の第一人者たちはもちろん、米GitHub社から招いた開発者たちも登壇し、いずれ劣らぬ濃いセッションが繰り広げられました。ここではその様子を紹介します。 GitHub実践入門 ── Pull Requestによる開発の変革 トップバッターとして登壇したのは、WEB+DB PRESS plusシリーズ『GitHub実践入門 ── Pull Requestによる開発の変革』の著者である大塚弘記氏です。 『GitHub実践入門』の著者、大塚弘記氏 同氏はまず、「GitHubを利用した開発の世界を知る」「GitHubを(利用|活用)する違いを
こんにちは、id:shiba_yu36です。先日開催された「GitHub Kaigi」にて、はてなブログチームでのGitHubを利用した開発フローについて、「はてなブログチームの開発フローとGitHub」というタイトルで発表しました。 資料はこちらです。 はてなブログチームの開発フローとGitHub // Speaker Deck はてなブログチームでは日々開発効率が上がるよう、開発フローの改善をしています。そこで今回の発表では、はてなブログチームの開発フローで、「タスク管理」、「レビュー」、「リリース」の3つのトピックで、実際に起こった問題とそれをGitHubなどを利用してどのように解決してきたかについて具体的に紹介しました。 1つ目のタスク管理というトピックでは、Redmineなどのタスク管理ツールとGitHubを併用している時の問題や、GitHubのIssuesのみタスク管理に利用し
ES + kibanaでサーバモニタリングをやってみたのですが、ESのCPU負荷がかなり高くて、リアルタイムにモニタリングできない状況だったので、graphite + grafanaにしてみた。ちなみに、ESのサーバのCPU負荷はこんな感じ。 GrafanaはGraphite用のDash boardを作るツール。最近、influxDBにも対応していてなかなか野心的。 Grafana - Graphite Dashboard kibanaをforkしただけあって、画面はそっくり。まだ修正もれがあるのか、メッセージにkibanaって文字がでてくることもある セットアップ もろもろのセットアップのメモ 監視サーバ まず、監視サーバにGraphiteとGrafanaをいれる。環境はCentOS6 CentOS6.x - CentOSにRPMでGraphite+Diamondをインストールする -
sysdig とは? Sysdig is open source, system-level exploration: capture system state and activity from a running Linux instance, then save, filter and analyze. Think of it as strace + tcpdump + lsof + awesome sauce. With a little Lua cherry on top. http://www.sysdig.org/ 上に書いてある通り、一言で言うと strace + tcpdump + lsof + α。tcpdumpのように-wで書き出して-rで読み込めるのがありがたい。 高機能過ぎてまだ全然使いこなせてないけど、ぱっと触った感じ使えそうだなと思ったものを紹介。 1. プロ
最近うぇぶ業界では、開発効率や構築効率を求める動きが活発のように見受けられますが、ここで改善効率について手を伸ばしてみましょう。 改善効率とは、開発後期やサービス開始後の運用フェーズにおいて、クソコードやクソクエリ、データの蓄積によるレスポンスの悪化などを、自動的に検知し、開発者にオラオラ改修をプッシュするための仕組みのことでございます。 はじめに ここで紹介する内容はドリコムで実際に運用しているものですが、別にドヤ顔するようなものではなく、中規模以上の企業ならば似たようなことやそれ以上のことをやっているであろう、至極当然な内容です。それでも、それなりに種類が増えてきたことと、それなりの効果を得られていることが実感できているため、いったんまとめてみようと思った次第です。 ウチのサービスのサーバーサイドは Ruby on Rails + MySQL が基本なので、その対策手法になります。WE
「この度は取材をお受けしましたが、どう対応したらよいか。今でも迷いがあります」。担当者は取材の冒頭で、心境をこう吐露した。 記者は取材のためレンタルサーバー事業を手掛けるファーストサーバ(本社:大阪市)を訪れた。1年半ほど前に、顧客企業が利用していたサーバー約5700台のデータをほぼ消失させる大規模障害を起こした事業者だ。 今回の取材は、過去に失敗を経験した複数の企業や公的団体に申し込んだ。目的は、「IT運用の失敗から技術者がどう学び、再発防止に取り組むべきか」をまとめる企画記事を執筆するためだ。 中でもファーストサーバは、運用のプロであるべきITベンダーが、一部とはいえ現場担当者のずさんな運用作業を見逃していた実態が明るみになり、個人としても大きな衝撃を受けた。失敗を経てどう体制を立て直したのか、大いに興味があった。 「非技術者」にも分かる再発防止策を:ファーストサーバ 簡単に、ファース
増えるログ、多様化するログをどう効率的に運用するか:今さら聞けないfluentd~クラウド時代のログ管理入門(1)(1/2 ページ) 仮想化やクラウド化、モバイル化の進展に伴い、管理すべきログが多様化・肥大化しています。そんな中でも効率よく、意味のあるログ管理を実現するツールとして注目されている「fluentd」を、これから始めたい方のために一から解説します。 システムを安定して効率良く運用していくために、ログ管理は欠かせない要素の1つです。仮想化やクラウド化、モバイル化の進展につれてシステムはますます大規模化し、それに伴い管理すべきログが多様化・肥大化する傾向にあります。 fluentdはこういった中でも、効率よく、意味のあるログ管理を実現するために非常に有用なツールです。本連載では、fluentdの基本と具体的な活用方法を紹介します。 ログ管理の現状と課題 環境の仮想化・クラウド化、さ
サイタスマネジメントからピットクルー へ 株式会社サイタスマネジメントはピットクルー株式会社と合流し、 今後はピットクルー株式会社として、これまで以上のサービス提供に注力してまいります。
プルリクエスト/レビューを取り込んだ、よりシンプルなGitHub Flowの運用を図解する:Gitブランチを使いこなすgit-flow/GitHub Flow入門(終)(1/2 ページ) 数回にわたってgit-flowとGitHub Flowを使ったGitの活用テクニックを紹介します。最終回は、GitHubが採用している、git-flowよりシンプルな構成のブランチ管理フローについてです。5つの運用ルールや開発の流れを図を交えて解説します。 本連載「Gitブランチを使いこなすgit-flow/GitHub Flow入門」では、これまでgit-flowについて解説してきました。git-flowはプロダクトを厳格にリリースすることを念頭にフローが考えられていますが、プロジェクトによっては、冗長過ぎると感じることもあるかもしれません。本連載の最終回となる今回は、git-flowに比べシンプルなブ
踊るホスティティングサービス 変化を強いられる時代 壁を越え、進む あの日僕が BASIC に挫折した事を忘れない オープンソースを積極活用、そして一次対応へ 閾値主義からの脱却 一次対応の闇 一度は仕事を辞める覚悟をした 正直、もう人間が運用や監視対応するのは限界かもしれない Serf the Librator ――運用対応自動化が、進化への鍵か 今日よりも鮮やかに 概要と書きたかったこと 師走です。年の瀬ですね。寒くなりましたね。コタツが恋しいです。ミカンおいしいです(^q^) そんな季節柄、ふと、自分の仕事を振り返りたくなりました。 僕はこれまで、ホスティングサービスの中の人として歩んできました。自分が何を考え、どのように行動を起こしてきたか。その経緯は、今の自分しか書けない気がして。色々なスライドや twitter では伝えきれなかった事を、一度まとめたいなぁと。なので、こうやって
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く