2012/09/27 #ssmjp おうちOpenStack

2,587 views

Published on

2012/09/27
自宅でOpenStack構築してるので、その過程で調べたこととかを #ssmjp でシェアしてきた。

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,587
On SlideShare
0
From Embeds
0
Number of Embeds
69
Actions
Shares
0
Downloads
20
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

2012/09/27 #ssmjp おうちOpenStack

  1. 1. おうちOpenStack 2012/09/27 #ssmjp th0x0472
  2. 2. お約束twitter: @th0x0472blog: http://th0x0472.at.webry.info/自宅にOpenStack環境を構築中。(現在進行形)そのとき調べたこととか考えたことをシェアしますよ。ゆるゆるです。お手柔らかにお願いします。
  3. 3. OpenStackって何?オープンソースで開発されてるクラウド(構築and/or管理)ソフトウェア本家から引用:“OpenStack is a cloud operating system that controlslarge pools of compute, storage, and networking resources...”
  4. 4. お約束の情報源本家。WikiとかDocumentとか。http://www.openstack.org/Blueprintとかhttps://launchpad.net/openstack日本OpenStackユーザ会http://openstack.jp/あとコードはGitHubhttps://github.com/openstack
  5. 5. クラウド?クラウドって一言で言っても、イロイロあるよね。ありますね。
  6. 6. NISTによる定義もうあちこちで引用されまくってるけどService model: Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS)Deployment model: Private Cloud PUblic Cloudhttp://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
  7. 7. 日本語版もある英語は勘弁して!という僕みたいなへなちょこのためにIPAが日本語版を用意してくれてます。http://www.ipa.go.jp/security/fy23/reports/tech1-tg/a_07.html
  8. 8. で、OpenStackはどれ?Service model は、 IaaSですね。Deployment model は特に縛りはないけど、そのままではPublicは厳しそう。素だと課金できないからね・・・。でも、HPのCloudはOpenStackだそうです。中の人超がんばったに違いない。
  9. 9. コトの始まりをNASAが作っていたnova、RackSpaceが作っていたswiftが元になっています。 nova - 仮想マシンを提供してくれます swift - 分散オブジェクトストレージを提供し てくれます。OpenStackとしての開発は2010年7月開始らしい
  10. 10. AWSに当てはめるとぶっちゃけ過ぎですが・・・・役割的には nova = EC2 swift = S3ってことでいいと思う
  11. 11. 今あるプロジェクトnova - 仮想マシン担当horizon - Webユーザインターフェイス担当glance - OSイメージ管理担当keystone - 認証担当swift - 分散オブジェクトストレージ担当
  12. 12. まだまだ増えるよQuantam - SDN担当Cinder - ブロックデバイス担当この2つは、新リリースから。
  13. 13. 新リリース!Folsomといいます。今晩か明日リリース!らしい太平洋標準時 2012/09/27らしい
  14. 14. リリースサイクル今は春と秋、年2回、半年ごとにリリースするポリシーらしい。2012.1 とか 2012.2 とか <リリース年>.<No>でも、コードネームで呼ばれることが圧倒的におおい。
  15. 15. 歴代リリースAustin (2010/10)Bexar (2011/2)Cactus (2011/4)Diablo (2011/9)Essex (2012/4) <- ウチは今コレFolsom (2012/9) <- 次はコレGrizzly (2013/春)
  16. 16. コードネームリリースのコードネームは、地名を投票で選んでつけるそうです。Folsomは画像検索するとスゴイらしい。(先日のユーザ会の方の発表@OSC Tokyo/Fallで知りました。)
  17. 17. コードネーム万歳!nova とかもコードネームですよnova = OpenStack Computehorizon = OpenStack Dashboardglance = OpenStack Imagekeystone = OpenStack Identityswift = OpenStack Object StorageCinderとQuantamは・・・どうなるんだろ?
  18. 18. プロセスはこんなかんじ$ ps aux | grep nov[a] | grep pythonnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-cert --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-network --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-compute --flagfile=/etc/nova/nova.conf --flagfile=/etc/nova/nova-compute.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-api --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-objectstore --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-scheduler --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-console --flagfile=/etc/nova/nova.confnova ∼(中略)∼ /usr/bin/python /usr/bin/nova-consoleauth --flagfile=/etc/nova/nova.conf
  19. 19. 分かることPythonで動いてる一口に nova といっても、いろんなコンポーネントがある
  20. 20. いろんなnovaよく見るのはこのあたり。nova-apinova-certnova-computenova-networknova-objectstorenova-schedulernova-volume
  21. 21. ほかにもnova-consolenova-consoleauthnova-vnc
  22. 22. で、何が言いたいの?一言で「仮想マシン担当」っていっても、イロイロあるんですよ。 仮想マシンを動作させるホストを決定したり 仮想マシンに割り当てるIPアドレス用意したり 仮想マシンのディスク(ブロックデバイス)用意したり 仮想マシンのコンソールをWebUIに組み込んだり
  23. 23. 肝心の仮想化は?既存のハイパーバイザー使ってます。 KVM - Kernel-based Virtual Machine LXC - Linux Containers (through libvirt) QEMU - Quick EMUlator UML - User Mode Linux VMWare ESX/ESXi 4.1 update 1 Xen - Xen, Citrix XenServer and Xen Cloud Platform (XCP)
  24. 24. つづきはWebで詳しくはこのあたり参照で。http://docs.openstack.org/trunk/openstack-compute/admin/content/hypervisors.htmlFolsomでHyper-V 2008/2012 が復活するらしい
  25. 25. とはいえ僕はKVMしか使ったことないです!(自慢できることじゃない)ハイパーバイザーによって機能差有り。http://wiki.openstack.org/HypervisorSupportMatrixKVMとXenが中心っぽい。
  26. 26. で、動いてるところ
  27. 27. VNCでコンソールもOK
  28. 28. 蛇足だけどインスタンスのVNCの出力がWebUIに埋め込まれてるんだけどWebSocket使ってます。こんなかんじ。[KVM/VNC Server] -<vnc>- [novnc] -<WebSocket>- [Web Browser]Webブラウザ上の描画はHTML5のCanvasらしい。僕はHTML5分かりませんけどね・・・。
  29. 29. 実際どうよ?マウスぽちぽち、ぼちぼちテキスト入力で仮想マシンをどんどん作れる。ネットワークとかあんまり考えなくてOK(まぁ今できることは限られてるけど)(そのへんはQuantamに期待)他にもイロイロ
  30. 30. WebUIお手軽です
  31. 31. でも、タルイよね
  32. 32. そんなあなたにAPI最近のクラウドってだいたいAPIもってる。というか、猫も 子も・・・当然、OpenStackもAPIを持っています。
  33. 33. こんな本も出ましたAmazon Web Servicesプログラミング APIの基礎からElastic Beanstalkの利用まで天下のO’REILLYさまから ¥3,360- 2012年09月 発行, 348ページ ISBN978-4-87311-581-8
  34. 34. 買ってみましたでもまだ読んでいません。でもまだ読んでいません。大事なことなので二度言いました。
  35. 35. 僕のライフが尽きるのでさっさと結論にいこうと思います。APIを使うといろいろ便利(な予感)。 便利ツールとか 便利アプライアンスとか 自分でAPIたたくコード書いたり
  36. 36. 重要なのはもちろん「 自分でAPIたたくコード書いたり」 自分でAPIたたいたり 他人が書いたAPIたたくコード読んだり
  37. 37. いろいろあるけどコードに慣れることとサーバ周りをAPIをたたいて操作するって感覚を身につけるこの2つが大切かな∼と個人的に思います。
  38. 38. どっかで聞いたよねというか、先月の#ssmjpで@kawamucho 先生がNW方面からそんなお話してましたよね。はい、たぶん同じことです。
  39. 39. もっと振り返ると今年の初めに、@niftyさんがCROSSってイベントやりました。そこで気になったキーワード「プログラマブルなインフラ」色々な領域のエンジニアがクロスするってのもあったと思うけど、クロスと言うよりボーダレスだと思う
  40. 40. イロイロあるけどおしまい。ご清聴ありがとうございました。

×