Publickey 新野さん
- DevOps、かなり盛り上がっている
- DevOpsの始まりと広がり
- 2009/6/3 Oreillyのイベント「Velocity」
- 10 deploys per day dev&ops cooperation at Flickr
- 2009/10 DevOps Days
- 2009/6/3 Oreillyのイベント「Velocity」
- 10 deploys per day dev&ops cooperation at Flickr
- 最初は相手にされなかったDevOps
- DevOpsの原点
- ビジネスは変化を要求してくる
- 変化に伴うリスクを、ツールとカルチャーで低減する
- カルチャー
- ツール
- Automated infrastructure
- Shared version control
- One step build and deploy
- DevとOpsの言い分
- DevとOpsの協力関係のあり方
- Dev 継続的デプロイメント
- アジャイル
- Git
- Jenkins
- 自動テストツール
- Ops Infrastructure as Code
- クラウド
- Chef
- Puppet
- Vagrant
- Dev 継続的デプロイメント
- で、うまくいってるの?
- メトリクスで判断しよう
- ログ解析
- メトリクス取得
- メトリクスで判断
- ユーザ滞留時間なり、ビジネス上の指標
- メトリクスはすり合わせが肝心
- あらかじめ決めておく
- どんな情報がログから取り出せるのか
- その中でどれがメトリクスとして使えるのか
- それ以外で評価すべきことはあるか
- エンタープライズでの課題
- 日本のSIビジネスにDevOpsは適用できるのか?
- BizとDev/OpsはDevOpsのメトリクスを握れるのか?
- どのプロジェクトをDevOpsで進めるか、選べるのか?
- そもそもアジャイルやクラウドの採用にハードルがあるのではないか?
ChatWork 山本さん
クラウド型ビジネスチャットツール
- Dev: どんどん機能追加したい
- Ops: 安定運用したい
極力__運用しない__
- データベース
- write heavyな負荷
- Amazon RDS, DynamoDB
- ファイルサーバ
- 要Scale Out
- Amazon S3
- リアルタイム通信
- C10K問題
- Google API Channel API
- Paas → PaaS + IaaS
- 成長に伴いIaas比率をあげていく
- 基本的に自動復旧
- ファイルオーバー
- ロードバランサから切り離し
- 代替機能へフォールバック
- Nagios通知
- 不調なサーバの切り替え
- 各種プログラムの改修
- Dev = デベロッパ&デザイナ
- Ops = インフラ&サポート
- Biz = マネージメント&マーケティング
- ほとんどのコミュニケーションはチャットで。メールはしない。口頭確認やMTGは最低限に。
- プロジェクトごとにグループチャットを作成し、関係者を全員入れる
- タスクの生まれる「背景」を共有する。言われたことだけをする"作業者"を作らない
- 障害発生時は?
- Opsの人がまず原因究明。必要ならDevに。
- 受発注の関係の経験
Microsoft 長沢さん
- ビジネスとITが牽引
- ジャストインマーケット
- IT計画と投資は、顧客中心に
- お客様
- 従業員
- 基礎体力
- 戦闘力
必ず必要なもの
- 共通ゴール
- 成果物の共同所有
- 自動化
- Services
- Enterprise IT
- Software (Platform)
- パッケージにも継続的デリバリーが波及
- メトリクスでサイクルタイムとMTTRがあったが、どう大事なの?
- サイクルタイムが短いほど、ビジネス価値が見えやすい
- MTTRはDevとOpsにまたがる。ITに近いメトリクスとしてお互いのよさがわかる
クリエーションライン 浦底さん
- インフラの構成を自動化
- 単なる自動化ツールではない
- インフラ構成管理フレームワーク
- サーバインスタンスはオブジェクトである
- インフラをモデル化
- リポジトリ管理が可能に
- ブランチ管理
- コードの差分把握
- コードレビュー
- コードの共有
- テスト駆動インフラ開発が可能に
- 必要
- テスト駆動で維持する品質は低下の防止
- 冪等性
- 収束
- 可用性
- 迅速性
- 再利用性
- 継続的
- コード化されたビジネス
- 時間がかかるのは当たり前
- 「全てを一度に変える」のは不可能
- 文化から変えていく
できることから始めよう
日本HP 藤井さん
- "サンドボックス"タイプ
- "BETA"タイプ
- しがらみ
- スキル
- 別にそんな頻繁に"リリース"しない
- DevOps
- スピード&ビジネス俊敏性
- OpsDev
- 効率化と低コストの推進
- CMMIを模したDevOps成熟度
- アクティビティベースの成熟度モデル
- テスト・デプロイを一連の流れとして自動化
- リリースが頻繁でなければDevOpsはいらない?
- リリース頻度は関係ない。
- "BETA"なエンタープライズにとっては、リリース可能な品質獲得のスキーム
- DevOpsを、サンドボックスから開放しよう!
- DevOpsで、新しい開発アプローチをサンドボックスから開放しよう!
アマゾンデータサービスジャパン 吉羽さん
- ビジネス環境の変化
- Amazonの3つのコアビジネス
- コンシューマ向け
- セラー向け
- ITインフラビジネス
- 開発者は新しい機能をどんどん作る
- 運用者は安定した運用を提供する
ミッションの違い
- It's not my business
- サイロ化
- オーバーヘッド
価値を生む作業に時間を使えていない・ムダがある!
- 顧客とビジネスの間のフィードバクループを加速する
- 顧客の期待に応え続ける
- DevOpsは考え方で、プロセスやフレームワークではあい
- 実装は現場によって異なる
- お互いの尊重
- お互いの信頼
- 失敗に対する健全な態度
- お互いを非難しない
- インフラ構築自動化
- バージョン管理
- 継続的インテグレーション
- デプロイ自動化
- 監視
- 情報共有
- ダッシュボード
アジャイル開発
- Scrum
- 優先順位をつけて1つづつ確認
- XP - 19個のプラクティス
- 共通理解
- 完了の定義を作り、何を持って出荷可能かを定める
- 定義はビジネス+Dev+Opsで作成
- 品質の作り込み
- 早く見つけて速く直す
- 繰り返し型の開発 Scrum
- 継続的インテグレーション Scrum + XP
- 継続的デプロイ Lean
- Infrastructure as code
- クラウドコンピューティング
- Design for Failure
- 全てのものが壊れる前提で設計する
- サーバもアプリケーションも
- 1か所壊れても動くように
いまでしょ!の前にやることがあります
- あなたの組織のゴールは?
- 現実を見つめなおす
- 小さく始める
- 1日にしてならず
- 当たり前のことを当たり前に
- バージョン管理
- コーディング規約
- コードレビュー
- テスト自動化
- ドキュメント
- …
- 組織づくり
- 成功をみんなで祝う
自分の組織にとってDevOpsとは何なのか? どうなれば成功かを考え、着実に小さい成功を積み上げる
html5j えんぷら部部長 川田さん
- 業務屋は本当に、Webをやっていたのか?
- 事実上IE6のみだったのが、変化しようとしている
- Windows XPサポート終了
- 既存のWeb資産はどう維持するか?
- 企業はOSをアップグレードしてくれた
- スマートデバイスの普及・セキュリティ技術の進化
- システムがデスクから解放されつつある
- RIAの登場・オープン系へのシフト
- 多様化したRIAの実現手段
- 既存資産の移行
- Windows XPサポート終了
- HTML5は使用を決める仕組みが違う
- バザール方式
- Canvasでグラフの描画
- AppCacheを使ってオフライン化
- WebSocketをつかった監視
- フォーカスとか
- Enterでタブ移動したり
- ime-modeとか
CSS3で標準化!
- 素直にHTML5を使う
- 新しいほうが標準準拠性が高い
- Webブラウザが対応しない
- 非対応になる
- 要素の選択に時間をとられる
- APIサーバが対応しない
- Apacheが対応しない
- ネットワークが対応しない
- エンタープライズで扱うには、安定度の見極めが難しい
- 2014年あたりの勧告化を楽しみに!
IIJ 前橋さん
- ISPにおいて、サービスの状態把握は必須
- そのために大量のログデータを扱う必要がある
- ISPにおける大規模データ
- ほぼすべて時系列データ
- 分析したい項目や抽出条件は多岐にわたる
- 巨大なログデータの処理といえばhadoop
- ddd + ddfs
- 社内用
- pmux
- Hadoopはバッチ処理に特化している
- 自社開発でノウハウをためるため
- 用途を特化して作ればより効率のよいものが作れる
- やってみたかったから
- Hadoopはバッチシステム
- 24秒の遅延が気にならないような、巨大なバッチ処理
- やることが決まっている定形処理
- やりたいこと
- サービス運用者は、試行錯誤により、より深いデータ分析を行う
- 分析に必要なパラメータは多様であり、事前に網羅することは困難→定形でない
- データを生のまま保存し、オンデマンドで抽出する必要がある
- ddd
- 大量の時系列データを蓄積し、必要に応じて短時間で検索・集計結果を返す
- 時系列データに最適化した分散ファイルシステム
- 自動レプリケーションによるデータ冗長化
- 楽観的タスクスケジューリング
- 極めて小さいデータを、何もせず素通しにする応答速度
- Hadoop 19秒
- ddd 0.12秒
- pmux
- pipeline multiplexerに由来
- オープンソース
- https://github.com/iij/pmux
- 標準入出力を介してMapReduceするためのコマンドラインツール
- ファイルがあるノードで処理を実行
- 多数のノードを前提とした分散システムのデバッグは超大変
- ネットワークをモック化
- 複数ノード環境をシミュレーション
- テストへの組み込み
- CIツールによって自動実行
- 実環境でしか再現できないトラブルもある
- ノード間通信の集中に起因
- コネクション数限界
- パケットの消失
- ノード間の通信をキューを使って制御
- ノード間通信の集中に起因
- もちろんYES
- サービスや社内システムのバックエンドで活用
- ビッグデータに関する新サービスで応用予定
- サービスのバックエンドとして利用
- ノードの設置場所
- 運用の基本思想
- 楽をする
- 機材は壊れることを前提
- 監視とモニタリングはしっかり
- サーバについて
- ネットワークブート
- 起動後にChefで必要な物をインストール
- 仮想化技術は使っていない
- HDDは搭載しているが、データ格納用途のみ
- dddやGlusterFSのレベルで冗長化
- 故障はそれなりに起こる
- 監視について
- 死活監視・ポート監視
- ディスク残量監視
- MapReduceの実行時間監視
- モニタリング
- ファシリティレベル
- 各種リソース
- アプリケーションレベル
- ISPは、サービス状態の把握のために巨大なログデータを扱う必要がある
- 分散処理システムを独自に開発
- 定型でない処理に対応
- 運用
- 今時の普通のやり方
- モニタリング重視
さくらインターネット 松本さん
- クラウド事業者では一般的な構成
-
10 Gigabit Ethernet NICとは?
- (画像)
-
40 Gigabit Ethernet NICとは?
- (画像)
-
10 Gigabit Ethernet Cableは光とメタル
- SFP+ Copper Cable(50cmで¥5000くらい)
- SFP+ Optical Cable
-
40 Gigabit Ethernet Cableは光とメタル
- QSFP+ Copper Cable
- QSFP+ Optical Cable
- 根本的にケーブルが異なる
- 曲げ径が大きい
- コネクタを抜き差しするうちカード自体が抜けたり
-
10 Gigabit Ehternet Switchの価格帯
- $8280〜$14250までの標準価格帯
-
10 Gigabit Ehternet Switchの価格帯
- $14670からの標準価格帯
-
高価な測定機器というハードル
- Intel x86サーバで測定環境を作ってしまう
-
Linux系ツールのバージョンアップが必須
- 速度表示が違ったり
-
10GbEドライバのインストール方法は簡単
-
ベンダーによる10GbE NIC性能差は?
- サービスの特性に合わせてNICを選ぶ
-
HighGig DATA Transfer Benchmark
- 使い方次第
- お金をかけなくても、運用できる
- 自分たちでやろう!
メントルシステム販売 木下さん
システム開発に携わっている女性へ
- 自分で企画したものを自分で作って世の中に提供したい!
- 挫折を繰り返す
- 前向きになるものの、自分だけでは限界
- だめもとで企画コンテストに参加
- チーム内では好評
- 賞はもらえなかったが、ちょっと自信に
- 目標へ一歩近づく
- Windows女子部部長に
- ちょっと一歩踏み出すことで、一気に世界が変わります
- コミュニティには沢山のチャンスがある
gumi 高柳さん
- 研修にファシリテーションを足してみました
- 「場の概念」を足す
- 「関係性の構築」を足す
- ヒアリングにコーチングを足す
- 主体性が発現
社内研修の2つの力
- 強制力
- 一緒に作りましょう
- 公認
- 現場の研修を会社が認めています
株式会社ビッグツリーキャピタル 高安さん
- 設計前に行うこと
- システム全体の把握
- 共通設計
- 機能仕様
- 粒度を整える
- 画面設計
- 画面遷移図
- レイアウト
- イベント設計
- 帳票設計
- 外部連携設計
- DB設計
- 処理詳細設計
- アーキテクチャ設計との関係
- 設計のキーワードは「粒度」「網羅的」「整合性」
- DevOpsを検討する場合でも、全体像をしり、要素を知る
- そして、「試行錯誤するための計画」を作り、試行錯誤する
- その中で何かがみつかるはず
フリーランス見習い 佐々木さん
- 海上保安庁のテレタイプのコンピュータ化
- 電子交換機の開発
- 埋め込みマーク解析ツールBillを自作し、MS-DOS学習ツールを作る
- COBOL巨大コピー句群から、単体テストデータを半自動生成
- DDJJ誌休刊時の総目次をXML化、編集部へ寄贈
- JUnitテストコードから単体テスト仕様書を自動生成
- Lotusノーツデータベースの文章をCSV化するstrucText2csv
- 引退して、翻訳作業向け生産管理ツール、モジモジくん開発してます
- リアルな世界 - コンピュータを使った素敵な世界を作ろう!