Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1 Day Cloud on Your Lab 
- Apach CloudStack Advent Calendar ‘14 - 
Japan CloudStack User Group, 
Apache CloudStack Project...
About Me 
 Go Chiba 
– 某SIer勤務 
*Stackとかいじってます 
Apache CloudStack は趣味です 
– Apache CloudStack コミッター兼PMC メンバー 
メイン: ドキュメント/...
Introduction 
本資料はApache CloudStack Advent Calendar 2014 
12/8用の資料になります。 
まだチャレンジ中の内容を 
含むため何かありましたら 
Twitter/Mailなどで 
お声か...
Introduction 
 最近のCloudStackの状況 
– Cloud Stack 4.5の新機能をチラ見するby @yterukawa 
– Apache CloudStack 4.5.0 をコンパイルして使ってみる 
by @g...
Introduction 
 ユーザー的観点 
やっぱ気になる最新バージョン 
でもビルド出来るか心配... 
そもそも開発じゃないのにビルドとか... 
 コミュニティ的観点 
ユーザーからのフィードバックは大事、とても大事... 
ユー...
In addition... 
 ユーザー/Devのギャップ 
– もっとユーザーフレンドリーな方法を 
 デザインが難しい 
– All-in-One だけじゃ物足りない(HA構成とか) 
 お手軽に触りたい 
– その日のうちに触れる...
そこで... 
+
Why Ansible? 
 sshでシンプル 
– 泥臭いオペレーションも自動化できそう 
 pythonistaだから 
– まぁ、最悪コードみればいいべ的な 
 ラップトップ環境を想定 
– 数台の小規模環境ならSSHベースでもいい...
Environments 
MBA(Mid 2011) 
VirtualBox : v4.3.14 r95030 
Vagrant : v1.6.5 
Ansilbe : v1.7.2 
CloudStack : 4.6-SNAPSHOT(ma...
Details 
 開発メンバーの1人でもあるRohit氏のplaybookを参考 
– https://github.com/bhaisaab/peppercorn 
 CentOS向けのタスクを追加 
- name: Download ...
Details 
 本家のビルド済みパッケージを利用 
– http://jenkins.buildacloud.com 
– 最新のコード 
– ”ある程度” Stable
Details 
 githubからcloneしてhostsファイルを修正 
 その後、ansible-playbookでplaybookを実行 
☁ $ git clone https://github.com/go/TestCloud....
Details 
 roles 
– kvm 
KVMインストール 
bridge設定など 
– nfs 
NFS用ディレクトリ作成など 
– mysql 
MySQLインストール 
設定ファイルのコピーなど 
– management 
C...
Result 
 とりあえずサービスが動くところまで確認
Issues 
 遅い! 
– 本家のJenkinsサーバー/リポジトリが遅い...(回線の問題?) 
– 国内リポジトリ作る? 
OR 
– Code baseでパッケージビルドまでやっちゃう?
Issues 
 美しくない! 
– 土日でゴリゴリしたからまだ不十分な点が多々あり 
– ネットワーク周り 
– 変数の集約化(バージョン, IPとか) 
– Distribution部分のモジュール化(RedHat, Ubuntu) 
-...
TODO 
 冪等性の向上 
> 少しでもデプロイを早く!, 条件チェックを見直し 
 変数を整理 
> 複数バージョンを対象にデプロイできるように 
- name: Setup CloudStack database 
shell: cl...
TODO 
 All-in-One構成以外を定義 
> マルチノードやHA構成もお手軽に試せるように 
– 分散VR 
– Inter VPC network ...etc
Happy Merry Christmas!! 
それではみなさん良いクリスマスを♪
Upcoming SlideShare
Loading in …5
×

1day cloud on_your_lab

738 views

Published on

Apache CloudStack Advent Calendar 2014 向けの資料になります

Published in: Software
  • Be the first to comment

1day cloud on_your_lab

  1. 1. 1 Day Cloud on Your Lab - Apach CloudStack Advent Calendar ‘14 - Japan CloudStack User Group, Apache CloudStack Project, Go Chiba @go_chiba
  2. 2. About Me  Go Chiba – 某SIer勤務 *Stackとかいじってます Apache CloudStack は趣味です – Apache CloudStack コミッター兼PMC メンバー メイン: ドキュメント/GUIの日本語化 その他: コミッター選出, マーケティング. . .etc – Contact mailto: go.chiba@gmail.com | gochiba@apache.org Twitter: @go_chiba
  3. 3. Introduction 本資料はApache CloudStack Advent Calendar 2014 12/8用の資料になります。 まだチャレンジ中の内容を 含むため何かありましたら Twitter/Mailなどで お声かけください
  4. 4. Introduction  最近のCloudStackの状況 – Cloud Stack 4.5の新機能をチラ見するby @yterukawa – Apache CloudStack 4.5.0 をコンパイルして使ってみる by @giraffeforestg 少しずつだが3rd Party連携がチラホラ 最新機能だけでなく既存の機能も確認しておきたい
  5. 5. Introduction  ユーザー的観点 やっぱ気になる最新バージョン でもビルド出来るか心配... そもそも開発じゃないのにビルドとか...  コミュニティ的観点 ユーザーからのフィードバックは大事、とても大事... ユーザーへの配慮が足りない?(How to Buildのみ...)
  6. 6. In addition...  ユーザー/Devのギャップ – もっとユーザーフレンドリーな方法を  デザインが難しい – All-in-One だけじゃ物足りない(HA構成とか)  お手軽に触りたい – その日のうちに触れる環境を
  7. 7. そこで... +
  8. 8. Why Ansible?  sshでシンプル – 泥臭いオペレーションも自動化できそう  pythonistaだから – まぁ、最悪コードみればいいべ的な  ラップトップ環境を想定 – 数台の小規模環境ならSSHベースでもいいんじゃね?
  9. 9. Environments MBA(Mid 2011) VirtualBox : v4.3.14 r95030 Vagrant : v1.6.5 Ansilbe : v1.7.2 CloudStack : 4.6-SNAPSHOT(master)
  10. 10. Details  開発メンバーの1人でもあるRohit氏のplaybookを参考 – https://github.com/bhaisaab/peppercorn  CentOS向けのタスクを追加 - name: Download packages(RedHat) when: ansible_os_family == "RedHat“ # Check OS Familly get_url: dest=/home/vagrant/{{ item }} url={{ jenkins_url }}{{ item }} with_items: - cloudstack-agent-4.6.0-SNAPSHOT.el6.x86_64.rpm - cloudstack-awsapi-4.6.0-SNAPSHOT.el6.x86_64.rpm
  11. 11. Details  本家のビルド済みパッケージを利用 – http://jenkins.buildacloud.com – 最新のコード – ”ある程度” Stable
  12. 12. Details  githubからcloneしてhostsファイルを修正  その後、ansible-playbookでplaybookを実行 ☁ $ git clone https://github.com/go/TestCloud.git 13:03:10 Cloning into 'TestCloud'... remote: Counting objects: 53, done. remote: Compressing objects: 100% (33/33), done. remote: Total 53 (delta 2), reused 50 (delta 2) Unpacking objects: 100% (53/53), done. Checking connectivity... done. ☁ $ cd TestCloud 13:03:56 ☁ TestCloud [master] $ ansible-playbook –i hosts playbook.yml
  13. 13. Details  roles – kvm KVMインストール bridge設定など – nfs NFS用ディレクトリ作成など – mysql MySQLインストール 設定ファイルのコピーなど – management CloudStackインストール 初期設定など . ├── README.md ├── Vagrantfile ├── hosts ├── playbook.yml └── roles ├── common │ ├── handlers │ └── tasks ├── kvm │ ├── files │ ├── handlers │ ├── tasks │ └── templates ├── management │ ├── meta │ ├── tasks │ └── vars ├── mysql │ ├── handlers │ ├── tasks │ ├── templates │ └── vars └── nfs ├── files └── tasks
  14. 14. Result  とりあえずサービスが動くところまで確認
  15. 15. Issues  遅い! – 本家のJenkinsサーバー/リポジトリが遅い...(回線の問題?) – 国内リポジトリ作る? OR – Code baseでパッケージビルドまでやっちゃう?
  16. 16. Issues  美しくない! – 土日でゴリゴリしたからまだ不十分な点が多々あり – ネットワーク周り – 変数の集約化(バージョン, IPとか) – Distribution部分のモジュール化(RedHat, Ubuntu) - name: Install basic packages(Ubuntu) when: ansible_os_family == “Ubuntu“ # そもそもDistribution毎にファイル分割するべき... ... - name: Install basic packages(RedHat) when: ansible_os_family == "RedHat“ ...
  17. 17. TODO  冪等性の向上 > 少しでもデプロイを早く!, 条件チェックを見直し  変数を整理 > 複数バージョンを対象にデプロイできるように - name: Setup CloudStack database shell: cloudstack-setup-databases cloud:cloudpassword@localhost --deploy-as=root -i {{ ansible_ssh_host }} when: cloudstackinstalled|success # 条件は正しいか? run_once: true args: creates: /var/lib/mysql/cloud # DBが作られていない場合は?
  18. 18. TODO  All-in-One構成以外を定義 > マルチノードやHA構成もお手軽に試せるように – 分散VR – Inter VPC network ...etc
  19. 19. Happy Merry Christmas!! それではみなさん良いクリスマスを♪

×