タグ: BPStudy

bpstudy #47

URL: BPStudy#47 : ATND

場所:R3C貸会議室 NOF新宿南口ビル4F セミナルームA

日時:2011/07/29 19:00 to 21:00

Togetter – 「BPStudy#47のまとめ」

XenServerによるお手軽サーバ運用(@tokibito)

業務の課題

  • 本番に近い環境
  • お客さんに見てもらう
  • 外部システムの連携
  • etc…

開発用のサーバがほしい

  • 前提条件
    • コスト(時間、お金)をかけすぎない
    • 今やらなくていいことはやらない
    • 必要以上に複雑にしない
      • メンテナンスコスト
      • 移行コスト

選択肢

  • レンタルサーバ
    • 共用
    • 専用
    • VPS
  • 自社
    • データセンター内に設置
    • 社内に設置

今後プロジェクトが増えたら?

  • 物理的に増やす
  • VirtualHost
  • chroot
  • 仮想化

検討

  1. プロジェクトごとに環境を作りたい
    →レンタルの共用は難しい
  2. 1プロジェクトの期間の平均は1〜3ヶ月
    →DCやレンタルの専用サーバは費用が高い

結果

社内にサーバを設置、仮想化で
→XenServer

なぜXenServerを選択?

  • VPSを借りるより自前サーバの仮想化は性能面、機能面で有利
    →いざとなればいろいろできる
  • KVMやXenは知識ないと大変そう
  • 8コアマシンを使いたかった
    →当時(2009.4)VMwareESXiは4コア上限
  • 無償だから

ハードウェア

  • 20〜30万の据え置き型
    (当時はオフィスが大きくなかったのでラックは置き場所や電源に困る)
  • CPU: Xeon
  • メモリ: 4GB

XenServerインストール

無償版ライセンスは1年毎に更新

XenCenter

GUIでXenServerを管理できるWindowsソフト

windows以外用にopenxenmanagerがある

Xenここが便利

  • 管理ソフトがGUI
  • VM(仮想マシン)のスナップショット
  • VMのテンプレート

運用後の課題

  • 設定が面倒
    • ネットワーク設定
      →スクリプトを作った
  • ユーザ管理
    →鍵認証にした

運用管理

  • VMの管理
    スプレッドシートで管理表(IPや用途)
  • VMの作成
    ルーチンワーク化

その他

  • XML-RPC形式のAPIがある
  • 物理3台で40VM程度運用

プロジェクトが失敗する要因+α(bash0C7)

プロジェクトとは?

プランニングオニオンの変形で
戦略→ポートフォリオ→プロダクト→リリース

プロジェクトの成功とは

予定通りの期間、予定通りの予算で最初に定義したすべてのフィーチャーを実現していること
『Extreme Chaos 2001. Standish Group International, Inc.』

失敗の要因

いっぱい

プロジェクトが失敗する1つの原因

見積もりミス
『ソフトウェア開発 55の真実と10のウソ』

見積の意義

  • 実施価値判断
  • 優先順位付け
  • 体制を検討

キーワード

  • 不確実性コーン
  • 規模と期間
  • 正確さと労力

不確実性コーン

プロジェクト初期ほど具体的なことが決まっていないので見積りの精度は不正確
プロジェクト終端は1つの点に見積りが収束

横をプロジェクト時間、縦を見積り(実績)にしてグラフ化すると、横に倒したコーン(円錐)になる
アジャイル開発にすることで、コーンを小さくなりブレが少ない見積りができる

規模と期間

例:東京大阪を移動するとき何時間かかりますか

かかる時間(期間)は
2時間40分(のぞみ)
1時間ちょっと(飛行機)
仮にのぞみがこだまとしたら
5時間

→条件によって期間はばらばら

でも距離500km(規模)はかわらない

→まず規模を決めよう
まず要求される機能の中から規模がわかるものを比較対象(基準)とする、その基準と他の機能を見比べて各機能の規模を決めていく。(これは基準の2倍だとか)

その後、基準を実装するのにかかる期間を見積もってあとは比率で各期間を計算する。(基準が1週間でできるからこれは2倍なので2週間だとか)

正確さと労力

見積もりをしっかりやっても確実性はあがらない

参考書:『アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~』
『アジャイルサムライ――達人開発者への道』

BPStudy #41

URL:http://atnd.org/events/11755

場所:EBISU303

RequireJS実践編(文殊堂さん)

資料:java-ja.js #2 RequireJS実践編 – 文殊堂

jQuery custom event応用編(文殊堂さん)

資料:jQuery custom event 応用編 – 文殊堂

疎結合なUIコンポーネントの作成について(文殊堂さん)

資料:疎結合なUIコンポーネントの作成について – 文殊堂

マスタリング非同期読み込み(os0xさん)

資料:マスタリング非同期読み込み BPStudy#41

gitの歴史改変について(神速さん)

Shibuya.trac 分散バージョン管理勉強会とほぼ同じ内容でした