SlideShare una empresa de Scribd logo
1 de 19
1 Day Cloud on Your Lab 
- Apach CloudStack Advent Calendar ‘14 - 
Japan CloudStack User Group, 
Apache CloudStack Project, 
Go Chiba @go_chiba
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
Introduction 
本資料はApache CloudStack Advent Calendar 2014 
12/8用の資料になります。 
まだチャレンジ中の内容を 
含むため何かありましたら 
Twitter/Mailなどで 
お声かけください
Introduction 
 最近のCloudStackの状況 
– Cloud Stack 4.5の新機能をチラ見するby @yterukawa 
– Apache CloudStack 4.5.0 をコンパイルして使ってみる 
by @giraffeforestg 
少しずつだが3rd Party連携がチラホラ 
最新機能だけでなく既存の機能も確認しておきたい
Introduction 
 ユーザー的観点 
やっぱ気になる最新バージョン 
でもビルド出来るか心配... 
そもそも開発じゃないのにビルドとか... 
 コミュニティ的観点 
ユーザーからのフィードバックは大事、とても大事... 
ユーザーへの配慮が足りない?(How to Buildのみ...)
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(master)
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
Details 
 本家のビルド済みパッケージを利用 
– http://jenkins.buildacloud.com 
– 最新のコード 
– ”ある程度” Stable
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
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
Result 
 とりあえずサービスが動くところまで確認
Issues 
 遅い! 
– 本家のJenkinsサーバー/リポジトリが遅い...(回線の問題?) 
– 国内リポジトリ作る? 
OR 
– Code baseでパッケージビルドまでやっちゃう?
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“ 
...
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が作られていない場合は?
TODO 
 All-in-One構成以外を定義 
> マルチノードやHA構成もお手軽に試せるように 
– 分散VR 
– Inter VPC network ...etc
Happy Merry Christmas!! 
それではみなさん良いクリスマスを♪

Más contenido relacionado

La actualidad más candente

Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座都元ダイスケ Miyamoto
 
Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93ko ty
 
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90ko ty
 
はじめての Gatling
はじめての Gatlingはじめての Gatling
はじめての GatlingNaoya Nakazawa
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHi_yudai
 
20140930 anything as_code
20140930 anything as_code20140930 anything as_code
20140930 anything as_codeSugawara Genki
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたkokuboyuichi
 
DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴Sugawara Genki
 
Leap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるLeap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるTsuyoshi Seino
 
イケてる分析基盤をつくる
イケてる分析基盤をつくるイケてる分析基盤をつくる
イケてる分析基盤をつくるAtsushi Hayakawa
 
MSPとしてのオペチー向けReadOnly IAMポリシー
MSPとしてのオペチー向けReadOnly IAMポリシーMSPとしてのオペチー向けReadOnly IAMポリシー
MSPとしてのオペチー向けReadOnly IAMポリシーMakoto Miida
 
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけねGitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけねNaoto TAKAHASHI
 
Cloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようCloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようKazuto Kusama
 
nginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積するnginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積するAtsushi Hayakawa
 
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonserverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonmasahitojp
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたHideaki Aoyagi
 

La actualidad más candente (20)

Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座
 
Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93
 
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90
 
はじめての Gatling
はじめての Gatlingはじめての Gatling
はじめての Gatling
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
 
LocalStack
LocalStackLocalStack
LocalStack
 
20140930 anything as_code
20140930 anything as_code20140930 anything as_code
20140930 anything as_code
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみた
 
DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴
 
Leap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみるLeap MotionとLambdaで「第九」を鳴らしてみる
Leap MotionとLambdaで「第九」を鳴らしてみる
 
イケてる分析基盤をつくる
イケてる分析基盤をつくるイケてる分析基盤をつくる
イケてる分析基盤をつくる
 
Leiningen超速入門
Leiningen超速入門Leiningen超速入門
Leiningen超速入門
 
Kubernetes helm & helmc
Kubernetes helm & helmcKubernetes helm & helmc
Kubernetes helm & helmc
 
MSPとしてのオペチー向けReadOnly IAMポリシー
MSPとしてのオペチー向けReadOnly IAMポリシーMSPとしてのオペチー向けReadOnly IAMポリシー
MSPとしてのオペチー向けReadOnly IAMポリシー
 
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけねGitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
 
Cloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしようCloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundry V2を、もうちょっと深掘りしよう
 
nginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積するnginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積する
 
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Pythonserverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Python
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
 

Similar a 1day cloud on_your_lab

CloudStackユーザ会 OSC.cloud
CloudStackユーザ会 OSC.cloudCloudStackユーザ会 OSC.cloud
CloudStackユーザ会 OSC.cloudsamemoon
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Yasuhiro Arai
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会samemoon
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介Midori Oge
 
第12回CloudStackユーザ会_ApacheCloudStack最新情報
第12回CloudStackユーザ会_ApacheCloudStack最新情報第12回CloudStackユーザ会_ApacheCloudStack最新情報
第12回CloudStackユーザ会_ApacheCloudStack最新情報Midori Oge
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようMidori Oge
 
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!Midori Oge
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストールYasuhiro Arai
 
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-靖 小田島
 
第14回cloudstackユーザー会
第14回cloudstackユーザー会第14回cloudstackユーザー会
第14回cloudstackユーザー会samemoon
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825hiro345
 
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理Rubyによるお手軽分散処理
Rubyによるお手軽分散処理maebashi
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますinfinite_loop
 
20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会samemoon
 
Community_Update_JP
Community_Update_JPCommunity_Update_JP
Community_Update_JPGo Chiba
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...Shinji Takao
 
HashiCorpのNomadを使ったコンテナのスケジューリング手法
HashiCorpのNomadを使ったコンテナのスケジューリング手法HashiCorpのNomadを使ったコンテナのスケジューリング手法
HashiCorpのNomadを使ったコンテナのスケジューリング手法Masahito Zembutsu
 
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計Fluentdでログを集めてGlusterFSに保存してMapReduceで集計
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計maebashi
 

Similar a 1day cloud on_your_lab (20)

CloudStackユーザ会 OSC.cloud
CloudStackユーザ会 OSC.cloudCloudStackユーザ会 OSC.cloud
CloudStackユーザ会 OSC.cloud
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
 
第12回CloudStackユーザ会_ApacheCloudStack最新情報
第12回CloudStackユーザ会_ApacheCloudStack最新情報第12回CloudStackユーザ会_ApacheCloudStack最新情報
第12回CloudStackユーザ会_ApacheCloudStack最新情報
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
 
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
2013OSC関西@京都_CloudStackとCloudFoundaryがまるわかり!
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
 
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
 
第14回cloudstackユーザー会
第14回cloudstackユーザー会第14回cloudstackユーザー会
第14回cloudstackユーザー会
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825
 
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
 
MoteMote Compiler Plugin
MoteMote Compiler PluginMoteMote Compiler Plugin
MoteMote Compiler Plugin
 
20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会
 
Community_Update_JP
Community_Update_JPCommunity_Update_JP
Community_Update_JP
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
 
HashiCorpのNomadを使ったコンテナのスケジューリング手法
HashiCorpのNomadを使ったコンテナのスケジューリング手法HashiCorpのNomadを使ったコンテナのスケジューリング手法
HashiCorpのNomadを使ったコンテナのスケジューリング手法
 
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計Fluentdでログを集めてGlusterFSに保存してMapReduceで集計
Fluentdでログを集めてGlusterFSに保存してMapReduceで集計
 

Más de Go Chiba

RancherJP振り返ってみた
RancherJP振り返ってみたRancherJP振り返ってみた
RancherJP振り返ってみたGo Chiba
 
Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Go Chiba
 
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoDockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoGo Chiba
 
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JPDockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JPGo Chiba
 
DockerCon '17 Feedback at PaaS JP
DockerCon '17 Feedback at PaaS JPDockerCon '17 Feedback at PaaS JP
DockerCon '17 Feedback at PaaS JPGo Chiba
 
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringIntroduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringGo Chiba
 
GUI&基本操作、CLI編
GUI&基本操作、CLI編GUI&基本操作、CLI編
GUI&基本操作、CLI編Go Chiba
 
CI/CD with Rancher CLI + Jenkins
CI/CD with Rancher CLI + JenkinsCI/CD with Rancher CLI + Jenkins
CI/CD with Rancher CLI + JenkinsGo Chiba
 
Introduction of skippbox
Introduction of skippboxIntroduction of skippbox
Introduction of skippboxGo Chiba
 
CCCEU Feedback
CCCEU FeedbackCCCEU Feedback
CCCEU FeedbackGo Chiba
 
Japan stats2014
Japan stats2014Japan stats2014
Japan stats2014Go Chiba
 
Devops4cloudlbuilder ja
Devops4cloudlbuilder jaDevops4cloudlbuilder ja
Devops4cloudlbuilder jaGo Chiba
 
Instruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with SphinxInstruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with SphinxGo Chiba
 
Presentation on Japanese doc sprint
Presentation on Japanese doc sprintPresentation on Japanese doc sprint
Presentation on Japanese doc sprintGo Chiba
 
Apache CloudStack 日本語ドキュメント翻訳会資料
Apache CloudStack 日本語ドキュメント翻訳会資料Apache CloudStack 日本語ドキュメント翻訳会資料
Apache CloudStack 日本語ドキュメント翻訳会資料Go Chiba
 
How to contribute Apache CloudStack
How to contribute Apache CloudStackHow to contribute Apache CloudStack
How to contribute Apache CloudStackGo Chiba
 

Más de Go Chiba (16)

RancherJP振り返ってみた
RancherJP振り返ってみたRancherJP振り返ってみた
RancherJP振り返ってみた
 
Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活
 
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoDockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
 
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JPDockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
 
DockerCon '17 Feedback at PaaS JP
DockerCon '17 Feedback at PaaS JPDockerCon '17 Feedback at PaaS JP
DockerCon '17 Feedback at PaaS JP
 
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringIntroduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 Spring
 
GUI&基本操作、CLI編
GUI&基本操作、CLI編GUI&基本操作、CLI編
GUI&基本操作、CLI編
 
CI/CD with Rancher CLI + Jenkins
CI/CD with Rancher CLI + JenkinsCI/CD with Rancher CLI + Jenkins
CI/CD with Rancher CLI + Jenkins
 
Introduction of skippbox
Introduction of skippboxIntroduction of skippbox
Introduction of skippbox
 
CCCEU Feedback
CCCEU FeedbackCCCEU Feedback
CCCEU Feedback
 
Japan stats2014
Japan stats2014Japan stats2014
Japan stats2014
 
Devops4cloudlbuilder ja
Devops4cloudlbuilder jaDevops4cloudlbuilder ja
Devops4cloudlbuilder ja
 
Instruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with SphinxInstruction to build Apache CloudStack docs with Sphinx
Instruction to build Apache CloudStack docs with Sphinx
 
Presentation on Japanese doc sprint
Presentation on Japanese doc sprintPresentation on Japanese doc sprint
Presentation on Japanese doc sprint
 
Apache CloudStack 日本語ドキュメント翻訳会資料
Apache CloudStack 日本語ドキュメント翻訳会資料Apache CloudStack 日本語ドキュメント翻訳会資料
Apache CloudStack 日本語ドキュメント翻訳会資料
 
How to contribute Apache CloudStack
How to contribute Apache CloudStackHow to contribute Apache CloudStack
How to contribute Apache CloudStack
 

1day cloud on_your_lab

  • 1. 1 Day Cloud on Your Lab - Apach CloudStack Advent Calendar ‘14 - Japan CloudStack User Group, Apache CloudStack Project, Go Chiba @go_chiba
  • 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. Introduction 本資料はApache CloudStack Advent Calendar 2014 12/8用の資料になります。 まだチャレンジ中の内容を 含むため何かありましたら Twitter/Mailなどで お声かけください
  • 4. Introduction  最近のCloudStackの状況 – Cloud Stack 4.5の新機能をチラ見するby @yterukawa – Apache CloudStack 4.5.0 をコンパイルして使ってみる by @giraffeforestg 少しずつだが3rd Party連携がチラホラ 最新機能だけでなく既存の機能も確認しておきたい
  • 5. Introduction  ユーザー的観点 やっぱ気になる最新バージョン でもビルド出来るか心配... そもそも開発じゃないのにビルドとか...  コミュニティ的観点 ユーザーからのフィードバックは大事、とても大事... ユーザーへの配慮が足りない?(How to Buildのみ...)
  • 6. In addition...  ユーザー/Devのギャップ – もっとユーザーフレンドリーな方法を  デザインが難しい – All-in-One だけじゃ物足りない(HA構成とか)  お手軽に触りたい – その日のうちに触れる環境を
  • 8. Why Ansible?  sshでシンプル – 泥臭いオペレーションも自動化できそう  pythonistaだから – まぁ、最悪コードみればいいべ的な  ラップトップ環境を想定 – 数台の小規模環境ならSSHベースでもいいんじゃね?
  • 9. Environments MBA(Mid 2011) VirtualBox : v4.3.14 r95030 Vagrant : v1.6.5 Ansilbe : v1.7.2 CloudStack : 4.6-SNAPSHOT(master)
  • 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. Details  本家のビルド済みパッケージを利用 – http://jenkins.buildacloud.com – 最新のコード – ”ある程度” Stable
  • 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. 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
  • 15. Issues  遅い! – 本家のJenkinsサーバー/リポジトリが遅い...(回線の問題?) – 国内リポジトリ作る? OR – Code baseでパッケージビルドまでやっちゃう?
  • 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. 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. TODO  All-in-One構成以外を定義 > マルチノードやHA構成もお手軽に試せるように – 分散VR – Inter VPC network ...etc
  • 19. Happy Merry Christmas!! それではみなさん良いクリスマスを♪