スキップしてメイン コンテンツに移動

書籍レビュー(備忘録)『SRE(サイトリライアビリティエンジニアリング)』


SRE(サイトリライアビリティエンジニアリング)の備忘録
  • 徹底と献身、準備とドキュメンテーションの価値を信じること。
  • 運用(定型)業務の合計を50%以下に。
  • 明文化が大切(業務、環境)。
  • ポストモーテム→事後検証・振り返り、レビューの重要性。
  • エラーバジェット[許容可能なエラー率(時間、範囲やレベル)]→いかなる場合でも100%を目指すのは間違い。
1章
  • モニタリング→サービスの健全性と可用性を追跡(アラート、チケット、ロギング、有効な出力)。
  • 変更管理の自動化→繰り返しタスクに対して疲労、慣れ、軽視、不注意といった一般的な問題を回避。
3章
  • 稼働時間を最大化するよりも、可用性におけるリスクとイノベーションの速度、およびサービス運用の効率性とのバランスをとる。
  • 停止時間よりもリクエスト成功率を可用性の定義とする。
  • 可用性はサービスが提供する機能と市場におけるサービスの位置づけによって決まる。
  • カナリアテストを組み込む設計
  • SLO-稼働時間=損失可能な信頼性
4章
  • SLI/SLO/SLAの違い
  • SLOは『SLI ≦ ターゲット、もしくは下限 ≦ SLI ≦ 上限』
5章
  • トイル≠やりたくない仕事
  • 雑務=オーバーヘッド
  • ただし、つまらない仕事には長期的な価値があることも。
  • トイルの定義
  • サービスを稼働させることに関係のある作業
  • 手作業で繰り返し行われ
  •  自動化する事が可能
  • 戦術的で長期的な価値を持たず
  • 作業量がサービスの成長に比例する傾向を持つ
6章
  • 4大シグナル→レイテンシ、トラフィック、エラー、サチュレーション(システムリソースの利用率)
  • ページに人が対応するという事は未来のシステム改善にあたる時間が無くなるという事。
11章
  • 運用の負荷を計測(日々のチケット、インシデントなど)

28章
  • SREの教育方法『推奨されるパターン』と『アンチパターン』、特にアンチパターンは普段の業務で行っていないか参考になる。
  • 『オンコールとその先へのSERの立ち上げの設計図』(抽象的↔実践的方法)
  • 意識的に理論と実践を適切に組み合わせて学習させる。
  • 学習とプロジェクトを担当させることで、目的と生産性の感覚を身につかせる。
30章
  • 正式なSLI/SLO/SLAがない場合、クライアントからの不満を招く。
  • 従来の運用モデルとの違いに苦戦しているチームは特定の部分に悩まされている理由を明確にできない。
  • 一人で解決しない、チームに呼びかけ、チームに説明を求められること。
31章
  • SREチームはシステム工学、アーキテクチャスキル、リーダーシップセンス、ソフトウェアエンジニアリングのスキル、プロダクトマネージメントのスキルや多様な経験をもつメンバから構成される。
  • プロダクションミーティングはサービス指向で行われ、進行状況について全員が同じ認識になること。
  • プロダクションミーティングのアジェンダ参考。
  • プロダクション環境で予定されている変更
  • メトリクス
  • 障害
  • ページされたイベント
  • ページされなかったイベント
  1. ページされるべきだったにもかかわらず、ページされなかった問題
  2. ページすべきものではないものの、注意を引く必要がある問題
  3. ページすべきではなく、注意を引く必要もない問題
  4. これまでのアクションアイテム
34章
トレーニング
  • 設計の概要
  • システムに対するさまざなリクエストのフローの詳細
  • プロダクション環境のセットアップの説明
  • システム運用のさまざまな面についての実践演習

コメント

このブログの人気の投稿

sendmailでの転送設定

某システムにてメールを配信する機能を開発へ依頼。 受け取った後、PHPの mb_send_mail はsendmailが無いと動かない事実を伝えられる。 うちのメールサーバはPostfixですよ。。。 Σ(|||▽||| ) 仕方が無いので、WEBサーバにsendmailを立て DMZ 内のpostfixへリレーするようする。 意外と内部のメールサーバに転送する文献がなかったので、備忘録として残すことにした。 ■sendmail-cf-8.13.8-8.el5.i386.rpmのインストール 設定ファイルをコンパイルするm4コマンドを使う為に必要。     ・モジュールの確認           # rpm -qa | grep sendmail         sendmail-8.13.8-8.el5         sendmail-cf-8.13.8-8.el5         「sendmail-cf-8.13.8-8.el5」がインストールされていなければ以下を実施     ・パッケージのインストール           # rpm -ivh sendmail-cf-8.13.8-8.el5.i386.rpm     ・再度モジュールの確認           # rpm -qa | grep sendmail         sendmail-8.13.8-8.el5         sendmail-cf-8.13.8-8.el5 ■hostsファイルの確認           ・hostnameの確認           # hostname        ...

Android端末の操作を自動化する

システムの運用保守をやってると、必ず実機確認(サービス正常性確認)というモノをやらされる訳であります。 スマホアプリ操作なんかだと、複雑なうえに素早く実施しないとイケない。 はっきり言って、アラフォー男子には限界があります。そこで 自動化 を思いつきます。 FRep - Finger Replayer が有力そうだけど、Root化しないとイケない?業務端末では無理です!! 有償で良さ気なソフトもありそうですが、まずは自力でチャレンジ。調べて見るとadbコマンドを使ってタップやスワイプのイベントを端末に送信できることがわかりました。早速、作業に取り掛かります。 2015/05/05 時点でリリースされている最新版を使って開発環境を構築します。 開発環境となるPCのOSはWindows7 Professional SP1 64bit。 作業は全て管理者権限が付与されたユーザで実施しています。 1. Android SDK をインストール ここ からAndroid SDKをダウンロードします。 サイトの下の方に「SDK Tools Only」があるので、そこから[installer_r24.2-windows.exe]をダウンロードしてインストールします。 次にシステム環境変数の中の[Path]変数を編集し、以下のパスを登録します。 "C:\android-sdk-windows\platforms" "C:\android-sdk-windows\tools"    ※"C:\"はご自身のインストール先によって異なります。 2. PCにAndroid端末を繋げる ①Android端末本体の「設定」から「アプリケーション」>「開発」>「USBデバッグ」にチェック。 ②Android端末をUSBでPCに接続。 ③コマンドプロンプトを立ち上げ、adbコマンドで端末の接続を確認。  > adb devices 以上で準備が整いました。 3. 画面キャプチャを撮って、座標を調べる 次に画面を操作する為、座標を調べます。画面キャプチャをペイント等のアプリで開いてみましょう。図の左下に座標が表示されます。ここではFace...