scalr hands on (第3回scalr勉強会で利用、第1回資料の新版)

59
SCALR Hands-on SCALRユーザ会 梶川 治彦(株式会社IDCフロンテゖゕ)

Upload: haruhiko-kajikawa

Post on 07-Jul-2015

661 views

Category:

Education


6 download

TRANSCRIPT

Page 1: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR Hands-on SCALRユーザ会

梶川 治彦(株式会社IDCフロンテゖゕ)

Page 2: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

本日の流れ

What is SCALR?

SCALR ゕカウントの取得

SCALRへCloudの登録

SCALRの操作方法

Farm(Wordpress Farm)の作成

Roleの追加/設定

DNS Zoneの追加/設定

Apache Virtual Hostの追加/設定

Deployment(コンテンツ)の追加/設定

Wordpressの設定

Wordpress のデモサトを作成します。

Page 3: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

What is SCALR? SCALRはオープンソースのマルチクラウド管理ツールです。

• サーバテンプレート • スクリプト作成

• サーバー起動 • デプロ

• 監視、ゕラート • オートスケーリング

デザイン プロビジョニング 運用

パブリッククラウドも、プライベートクラウドも管理できます!

API

Google CE Amazon EC2

Eucalyptus Rackspace Nimbula Cloudstack Openstack IDC Frontier Rackspace Open Cloud

(US)

Rackspace Open Cloud

(UK)

マルチクラウド管理ツール

詳細は、SCALRご紹介資料の「http://www.slideshare.net/hal-k/scalr-20130404-01」こちらをご確認ください。

Page 4: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR ゕカウントの取得

Page 5: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR 登録の流れ

1.SCALR 社のホームページに行く

(http://www.scalr.com/) 2. Start Free Trialをクリックしてゕカウントを登録

3. Account 詳細を入力

4. クラウド登録画面へ

(ログンpassword情報がメールに飛びます)

Page 6: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR 登録 – お試しゕカウント作成

http://www.scalr.com/ にゕクセスして体験用ゕカウントを取得します。

必要項目を入力して送信すると、すぐにクラウド登録画面に移ります。

Page 7: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR 登録 – ログンパスワード確認

ログイン パスワード

届いたメールにパスワードが記載されています。 後ほど、SCALRの管理画面から変更してください。

Page 8: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALRへCloudの登録

Page 9: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録の流れ

1.使用するクラウドの選定 (今回はIDCFクラウド)

2.クラウドを構成する(クレデンシャルの入力)

3.IDCFクラウド (noahcloud.jp) からAPI KEY と 秘密 KEY を取得

Page 10: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALRへのログン

https://my.scalr.com/ へゕクセスし、SCALRへログ

ンしてください。ログンパスワードは、登録時のメールゕドレスへ届いています。

Page 11: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – EC2

今回はIDCFクラウドのゕカウントで登録するため、EC2の登録はスキップします。

ゕカウント登録直後に画面が推移し、上記の画面になります。もし「Do this later」を選択した場合や、この画面でない場合、右上の「Environment1」→「Manage」をクリックすることで、次のページの画面なります。

Page 12: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – IDCFクラウド

IDC Frontierのゕコンを選択します。

Page 13: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – IDCF APIkey,Secret Key

API Key, Secret keyを入力する画面になるので、各keyをIDCFクラウドのポータルサトから取得します。

Page 14: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – IDCFクラウド ログン

https://noahcloud.jp/ IDCFクラウドのユーザー名とパスワードでログンしてください。

Page 15: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – マプロフゔル

右上のマプロフゔルをクリックします。

Page 16: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – API資格情報

APIを表示するには、ログンパスワードを入力する必要があります。

Page 17: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 - IDCF APIkey, Secret Key

それぞれをSCALR側へ登録してください。

Page 18: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録 – IDCF APIkey,Secret Key

API Key, Secret keyを入力して、登録を完了してください。 ※ IDCFクラウドでは、1アカウントに対して複数のユーザを作成できます

が、SCALRへ登録できるのは、マスターユーザのみです。

Page 19: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Cloud 登録

登録が完了すると[Environment saved]と表示され、ゕコンに色がつきます。 ※ 初回はこの画面に移らずにロールの取り込み画面になります。(キャンセルしてください。)

Page 20: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALRの操作方法

Page 21: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR各機能の呼び出し方法

各Cloud特有のメニューが追加されます。 IDCFを登録する際は、IDCFとしての登録に加えてCloudstackとしての登録をしておくとCloudstackメニューが利用できます。(API,Secret keyは同一のものでOKです。API URLはIDCFクラウドのFAQを参照してください。)

これら機能を呼び出してSCALRを操作します。

SCALRの各機能をお気に入りのメニューを登録できます。

SCALRの各機能を呼び出します。

Team/Userの設定、及びBilling情報の参照

Wiki/Supportへのリンク

User固有設定の参照/変更 Cloud登録環境の切り替え

Page 22: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

各一覧画面での操作説明

お気に入りへ登録 画面上部へクックリンクを登録できます。

新規追加 リフレッシュ カラムの表示/非表示 画面の自動更新を選択できます。

選択行に対する様々なゕクションを実行できます。

色々な一覧画面がありますが、基本的には同一の操作方法が提供されます。

Page 23: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Farm(Wordpressサト)作成 Roleの追加/設定

Wordpress のデモサト用のFarmを作成します。

Page 24: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

IDCFクラウド Instance (A企業サト)

FarmとRole ■ Farmとは RoleとRoleの設定情報をグルーピングした論理的な単位です。どのような単位で分けても構いませんが、分かり易い例としては、サト(A企業のサト、Bソーシャルゲームのサトなど)ごとや機能ごと(MySQL Farm, Front WEB Farmなど)に分けると良いとでしょう。

■ Roleとは RoleとはApacheやMySQLなどの機能(役割)のことで、1つ1つが各Cloud上でテンプレート(メージ)として存在します。 Farmを作成し、必要なRoleを並べて各Roleの設定をすることで、サイト(サービス)を作り上げていくことがSCALRでの作業の大部分となります。

Farm A (A企業サト)

LB Role WebApp Role DB Role

Farm B (Bソーシャルゲームサト)

LB Role WebApp Role DB Role

LB Nginx - 001 LB Nginx - 002

App Apache - 001 App Apache - 002 App Apache - 003

DB MySQL - 001 DB MySQL - 002

IDCFクラウド Instance (Bソーシャルゲームサト)

LB Nginx - 001 LB Nginx - 002

App Apache - 001 App Apache - 002 App Apache - 003

DB MySQL - 001 DB MySQL - 002

FarmにRoleを

詰め込んで設定する。

Roleの設定に従ってCloud側でインスタンスが作成/設

定される

Page 25: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress Farmの作成

SCALRメニューのFamrsから[+]で新規追加を行います。

Page 26: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Farmの名前設定

Farmへ名前を付けます。何でも構いません。 名前を入力したら「Add new role」をクリックしてください。

Page 27: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Roleの追加

3つのRoleを追加します。 • Load balancers lb-nginx64-centos6

• Application Server app-apache64-centos6

• Database servers mysql64-centos6

これらを使って、3Tier構成のWordpressサトを作っていきます。

<=Saveはまだ押さないでください。

実際の追加は、

次ページ参照。

Page 28: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

各Roleを設定

Roleを選択することで、各Roleの重要な設定を行うことができます。 ここでは主に、Cloud固有の設定を行います。DatabaseはDB固有の設定もここで一緒に行うことが出来ます。

クリック

選択したRoleの設定を行い「Add to farm」で追加します。

Saveはまだ押さないでください。

実際のCloudの設定は、

次ページ参照。

2013/09/20現在、IDCFクラウドではCentOSに加えてUbuntuもサポートされています。この資料はCentOSベースでの解説になりますので、CentOSを選択してください。

Page 29: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

各Roleを設定 – IDC Frontier setteings

Roleを追加した際に、Cloud側の設定を行います。選択するCloudにより、画面が異なりますが、IDCFクラウドの場合は、下記の設定を行ってください。(基本的にはどのCloudでも似たような内容です。) • Location 東京か白河ゾーンを選択

• Service offering VMタイプの設定

• Network 複数選択できる場合はInternet側を

選択 • Shared IP 必ずIPを選択してください。(Use system defaultsは選択しないでください。)

※ 追加した3Roleすべてで同一の設定を行ってください。(IPも同一のIPでOK。) ※ これらの設定は、後から変更することも出来ます。(追加されたRoleをクリックすることで設定できます。)

MySQLはCloudの加えて、Databaseの設定もここで行います。

詳細は次ページ参照。

Add to farmした後、Saveはまだ押さないでください。

Page 30: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

各Roleを設定 – MySQL settings

Add to farmした後、Saveはまだ押さないでください。

•FilesystemはOSに合わせて、Ext4を選択。 •Storage sizeは時間の関係から5GBにしてください。(IDCFクラウド上ではData Volumeが指定サズで作成されます。)

Page 31: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

各Roleの設定 – 詳細

① ここでターゲットを選択

② 項目を選択

③ 詳細設定します。 Add to Farmの時に設定した部分も、ある程度こちらで設定変更することが可能です。(Locationなど、変更不可の項目もある。) Add to Farmしたあと、Saveはまだ押さないでくださいと、どのページにも記載しましたが、Saveすると、後から変更不可の項目があります。例えば、DBのStorage Sizeなど。

各Roleの設定がすべて完了したら、Saveしてください。

Page 32: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Farmを起動!

Farm一覧から、作成したFarmのActions→LaunchでFarmを起動してください!

Page 33: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

DNS Zoneの追加/設定

Page 34: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

DNS Zoneを追加

SCALRメニューからDNS zones → [+]でDNS Zoneを新規登録します。

Page 35: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

DNS Zoneの設定 Domain nameをAutoで選択した場合、[autogenerated name].scalr.ws

と言ったドメインを利用できます。

Customで自前のドメインを利用することもできます。

%hostname%. 最後に「.」が必要です。

Farm : 作成したFarm Role : lb-nginx64-centos6 登録するドメンのAレコードの設定になります。 この例では「 e7376a90-e4f2-47dc-9b19-7c3619343b00.scalr.ws 」を名前解決すると、lb-nginx64-centos6 roleで指定したPublicIPが返されます。

次に使うので、コピペできるようにコピーしておく。

Page 36: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Apache Virtual Hostの 追加/設定

Page 37: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Apache Virtual Hosts の追加

SCALRメニューからApache Virtual Hosts → [+]でVirtual Hostsを新規登録します。

Page 38: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Apache Virtual Hosts の設定 先ほど作成したDNS

Zoneを指定します。

作成したFarmとApacheのRoleを指定します。

CenOS6に合わせてこちらの設定へ変更してください。

$xxxの変数は上記が反映されます。

拡大

Page 39: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Apache Virtual Hosts の設定

Document root /var/www/wordpress

Logs directory /var/log/httpd

Server Admin’s email local_part@domain

Server alias 作成したDNS Zone

Server non-SSL template:

<VirtualHost *:80> ServerAlias www.{$host} {$server_alias} ServerAdmin {$server_admin} DocumentRoot {$document_root} ServerName {$host} CustomLog {$logs_dir}/http-{$host}-access.log combined </VirtualHost> ScriptAliasの行を消しています。

Page 40: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployment(コンテンツ)の追加/設定

コンテンツであるWordpressをデプロします。

Page 41: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployment - Sources の追加

SCALRメニューからDeployments→Sourcesを選択後、新規追加でSourceを新規登録します。

Page 42: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployments - Sourcesの追加

SCALRメニューからDeployments→Sourcesを選択後、新規追加でSourceを新規登録します。

新規追加

URL: http://ja.wordpress.org/wordpress-3.6.1-ja.tar.gz

HTTPを選択

Page 43: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployment - Applications の追加

SCALRメニューからDeployments→Applicationsを選択後、新規追加でApplicationを新規登録します。

Page 44: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployments - Applicationsの追加

SCALRメニューからDeployments→Applicationsを選択後、新規追加でApplicationを新規登録します。

拡大

新規追加

Page 45: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployments - Applicationsの追加

Pre-deploy:

#!/bin/sh rm -rf %remote_path%/wordpress yum -y install php-mysql service httpd restart

Post-deploy:

#!/bin/sh chown -R apache:apache %remote_path%/wordpress

Page 46: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Deployments - Deploy

作成したゕプリケーションのActions->Deployを実行し、ゕプリケーションをデプロを実行します。

デプロ先として、作成したFarmとApache Roleを選択します。 Remote pathは「/var/www」としてください。wordpressは展開するとwordpressデゖレクトリを作成します。よって、最終的には「/var/www/wordpress」となります。 「/var/www/wordpress」は、VirtualHostを作成した際のDocumentRootです。

これで、WebサーバへWordpressがデプロされました!

「/var/www」を入力

Page 47: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpressの設定

Page 48: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 Connection detailsの確認

Page 49: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 Connection detailsの確認

Connection detailsは、ゕプリケーションから参照するMySQLのゕクセス先ホスト名となります。 今回のWordpressでは[Writes endpoint (Private)]を使います。

「Connection details」を選択

Page 50: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 phpMyAdminの設定

「Setup access」をクリックすると、「MySQL access

details for PMA requested. Please refresh this page

in a couple minutes..」となりますので、しばらくしてから、右上のリフレッシュをクリックしてください。

「Launch」「Reset access」となれば、準備完了です。

ただし、まだLaunchしないでください。

PHPMyAdminを実行するためには、IDCF クラウド側での設定も必要で、MySQL Roleの設定時に指定したPublicIPに対して、作成したMySQLのインスタンスへのTCP-3306へのポートフォワードとファイ

アーウォールの設定が必要です。

(次ページで説明します。)

SCALRからphpMyAdminを使うことが出来ます。

「Launch PHPMyAdmin」を押せるようになった段階でお待ちください。(まだ押さないでください!!)

リフレッシュ

Page 51: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 – IDCFクラウドの設定 – ポートフォワードルール

MySQLのRoleの設定時に指定したPublicIPのTCP-3306へのゕクセスを、作成したMySQLンスタンスのTCP-3306へポートフォワードする設定を行います。

MySQL Roleで指定したPublicIPを選択 ポートフォワードを選択

パブリックポート : 3306 - 3306

プライベートポート : 3306 - 3306

プロトコル : TCP

仮想マシン : MySQL Roleで作成したVM

⑤ ⑥

Page 52: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 – IDCFクラウドの設定 – フゔゕーウォールルール

MySQL Roleの設定時に指定したPublicIPに対して、フゔゕーウォールの設定を行います。

MySQL Roleで指定したPublicIPを選択 ファイアウォールを選択

ソースCIDR : 184.73.181.141/32 プロトコル : TCP 開始ポート : 3306 終了ポート : 3306

184.73.181.141はphpmyadmin.scalr.netとなり、

SCALRから起動するPHPMyAdminのホストです。

この設定後[Launch PHPMyAdmin]を実行できます。

⑤ ⑥

Page 53: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – DBの設定 – ユーザとDatabaseの作成

PHPMyAdminからWordpress用のMySQLユーザ作成とDatabaseを作成します。 ユーザ名とパスワードはWordpressセットゕップ時に利用しますので、控えておいてください。

Wordpressセットアップ時に使用します。

パスワードは指定するか、

自動生成してもいいです。

重要です!!

② ③

Page 54: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – Wordpressの設定 - IDCFクラウドの設定 – ポートフォワードルール

ポートフォワード ルールを追加し、サービスポートの設定を行います。 (ロードバランサー ルールでもかまいません。)

LB Roleで指定したPublicIPを選択

ポートフォワードを選択 パブリックポート : 80 - 80

プライベートポート : 80 - 80

プロトコル : TCP

仮想マシン : LBで作成したVM

Page 55: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – Wordpressの設定 – IDCFクラウドの設定 – フゔゕーウォールルール

LBのRoleの設定時に指定したPublicIPに対して、TCP-80(サービスポート)をオープンします。

LB Roleで指定したPublicIPを選択

ファイアウォールを選択

この設定後Wordpressへゕクセスすることができます。

ソースCIDR : 0.0.0.0/0 プロトコル : TCP 開始ポート : 80 終了ポート : 80

⑤ ⑥

Page 56: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – Wordpressのセットゕップ

PHPMyAdminから作成した、データベース名、

ユーザ名とパスワードを指定します。

Submitした後、WordPressの設定を続けてください。

SCALRの「Farm → Actions → MySQL status」のConnection

detailsで確認した、 Writes endpoint(Private)を使います。

作成したDNS Zoneへゕクセスしてください。 http://7a6d9bc0-ba2d-41d4-97ea-9fbf8b15fbdc.scalr.ws/ LB-Nginxへ指定したPublicIP直接でもOkです。

Page 57: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

Wordpress – セットゕップ完了

Page 58: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALR ユーザ会

Google グループ SCALRユーザ会 https://groups.google.com/forum/?hl=ja&fromgroups#!forum/scalr_user_group

■ 日本SCALRユーザ会の目的

• 国内における普及促進 • SCALRに関する情報収集と公開、技術促進 • ユーザー間および外部との技術的・交流促進

■ 日本ユーザ会の活動(予定)

• SCALR関連技術に関する情報収集・配布 • SCALR講習会、ワークショップ等の開催

Page 59: Scalr hands on (第3回SCALR勉強会で利用、第1回資料の新版)

SCALRからCloudの登録を削除

④ お帰りの際は、ハンズオンで利用したIDCF

クラウドの登録の削除をお願いします。