履修

概要

  • 初めにはクラウド関連のインフラ技術の勉強
  • OpenStack?によるクラウド環境の構築
    • どういうふうに技術が使われているのかの理解を進めていく
  • 優以外いらない,というのも有り!

事務連絡

  • 演習環境接続なるところで頑張る
  • ソフトのインストールが必要
  • シラバスにあるアドレスから,水曜日まで,ユーザIDを登録
  • 質問のアドレスもある,高橋先生のメアドにもOK
  • 遅刻禁止
  • カードは二階に待機,25分で事務にお願いする

授業メモ

0407

クラウド概要

  • さまざまなITリソースを必要なときにすぐに利用できる環境
  • クラウドの定義にこだわっていた
  • 「ITリソースの自動販売機」

クラウド分類

  • public-private クラウド
    • privateな理由は,セキュリティとか価格の問題
    • publicは使った分だけ高くなるので,自社専用のものを作る
    • 「会社内外の自動販売機」
  • [S,P,I]aaS
    • SaaS
    • PaaS
      • プログラマがアプリを開発する環境を整える.
      • Google Appsなど
    • IaaS (講義のメイン)
      • 仮想マシンの提供
      • OpenStack?, Amazon EC2

OpenStack?概要

  • OpenStack?
    • 仮想ネットワーク
  • 仮想マシンインスタンス
  • ボロックボリューム
  • 各ユーザは特定の「プロジェクト」に所属
    • 各ユーザにプロジェクトを割り当て
  • 個々のモジュールの中で,どういう機能が行われているか?
    • Open cSwitch, OpenFlow?は新しいが,ほとんどは今までと同じ.
    • なので,基礎技術をきちんと勉強すれば,後は楽
  • IaaSクラウドインフラは,「単純なものを組み合わせて,複雑なものを作り上げていく」というLinux哲学
  • 基礎技術をどのように適切に組み合わせるがキモ
  • (分業が激しく,これを全て組み合わせることができるひとは少ない,パーツパーツでは正しいのに動かないシステムを作るということが起きる)

OS

  • ハードウェアの吸収(ユーザにとって)
  • OSを導入する管理者は,ハードウェアの違いを理解した上で適切に構成する必要がある
    • 実際的にはデバイスドライバの問題
  • デバイスドライバ
    • ユーザプロセスがシステムコールによってハードウェアへのアクセスを要求→Linuxカーネルは適切なデバイスドライバを使用
    • /lib/modules/3.8.0-35-generic/kernel/driversなど.
    • (カーネルはいっぱいある場合がある.起動時に選べる.カーネルを入れ替えるときは,デバドラが入っているかをきちんと確認.)
    • rpmを入れるとデバドラも一緒に入る?
  • 起動
    • 電源→BIOSが(1)ハードウェア構成チェック(2)カーネル選択を要求(3)HDDのMBRに書き込まれたブートローダ(GRUB)をメモリに読み込み→GRUB(1)バイナリを展開(2)initスクリプトを実行(必要なデバドラを実行)(3)ルートファイルシステムを
    • →GRUBはカーネル選択を要求→
    • MBRは/boot/, /boot/initram*が書き込まれている
    • LinuxカーネルはHDDのデバイスドライバが必要なので,GRUB(2)で導入
    • システムBIOSは簡易的にHDDにアクセスできる.
      • 昔はHDDの先頭にしかアクセスできなかったので,Windows->Linuxでインストールすると,/bootにBIOSが届かなくて起動しないなどの問題があった.
    • pax initram*をすると,/lib/modulesなどがあり,初期RAMディスクにはすでに,いろいろなデバドラが入っている!(初期RAMディスクはcpio+gzip)
      • RHEL5ではinsmodで明示的に, RHEL6ではudevでデバドラをインストール
  • パーティション
    • /boot(200GB), /(nGB), swap(n<2GB->2*n, n>2GB->n+2GB)の三つがある.(/homeを分けることはある)
    • LVM(論理ボリュームマネージャ)はおすすめしない
      • 障害対応が楽
      • LVMの写像を理解するのに手順が必要で大変
    • UNIX時代は,パーティションをやたら分ける理由があったが,Linuxではない.
  • LVM
    • データベースでデータが増えるような場合に使う.
    • OSを保存する領域と,データが増える領域は明確に区別し,データが増える領域にはLVM使う
    • 後からデータベースの容量を増やせる.
    • PV(HDD, /dev/sdX), VG(HDDs), LV(仮想ボリューム)
      • HDD個数とその中のボリューム個数の仮想化
    • pvcreate /dev/vdbでPVにしてLVMの管理下に
    • vgcreate vg_data00 /dev/vdbでVGを作って,/dev/vdbをその中に.
    • lvcreate -L 512M ...でlv作成
      • /dev/vg_data00/
    • lvextend -L+128M /dev/vg_data00/lv_data00
      • ファイルシステムはフォーマットしていないので,リサイズ
    • resize2fs /dev/vg_data00/lv_data00
    • PV追加,マウントもできる.
  • LVMスナップショットの活用
    • スナップショット作成は
    • アプリ停止
    • ファイルシステムアンマウント
    • スナップショット作成
    • ファイルシステムをマウント
    • アプリケーション再開

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS