scalr hands on

Post on 24-May-2015

2.107 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

2012/11/30 「第1回 Saclr勉強会」で利用した資料のブラッシュアップ版です。

TRANSCRIPT

Scalr Hands-on Scalrユーザ会

クリエーションラン 株式会社 株式会社 IDC Frontier

山添 哲司 マケル 梶川 治彦、成田 真樹

本日の流れ

What is Scalr?

Scalr ゕカウントの取得

ScalrへCloudの登録

Scalrの操作方法

Farm(Wordpress Farm)の作成

Roleの追加/設定

DNS Zoneの追加/設定

Apache Virtual Hostの追加/設定

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

Wordpressの設定

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

What is Scalr? Scalrは、オープンソースのクラウド管理ソフトウェアです。

Copyright (C) Cloud Utilization Promotion Agency. All Rights Reserved. 3

物理ハードウェゕ (サーバ、ストレージ、ネットワーク)

パブリッククラウド

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

デプロメント Server起動

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

Cloud API

システムデザン 運用 プロビジョニング

クラウドマネジメント

仮想化ハパーバザー層

仮想化 API

プラベートクラウド

Supported Clouds

Public Cloud

Public Cloud

Public Cloud

Private Cloud

Private Cloud (Private Beta)

Private Cloud

Private Cloud

Public Cloud (サポート予定)

Public Cloud (サポート予定)

Scalr ゕカウントの取得

Scalr 登録の流れ

1.Scalr 社のホームページに行く (http://scalr.jp/)

2. Get Started for Free をクリックしてゕカウン

トを登録

3.Account 詳細を入力 (password情報がメールに飛びます)

2.メールゕカウントからパスワードを採取する

3.Scalrにログンする (http://my.scalr.net/)

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

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

ログイン パスワード

Scalr 登録 – ログン

メールゕドレス

メールゕドレスから採取したパスワード

http://my.scalr.net/ ID : 登録したメールゕドレス PW : メールで届いたパスワード

ScalrへCloudの登録

Cloud 登録の流れ

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

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

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

4.タムゾーンの設定

Cloud 登録 – EC2

本日はIDCF Cloudのゕカウントを準備しているため、 Amazon EC2はキャンセルでお願いします。

Cloud 登録 – IDCF Cloud

この画面にならずに、Dashboardになってしまった人は、右上、

右から三番目(default) → Manage → Actions → Configure で同じ画面になります。

Cloud 登録 – I want to use IDCF

Cloud 登録 – IDCF APIkey,Secret Key

API Key, Secret keyはIDCF Cloudから取得します。 次で説明します。

Cloud 登録 – IDCF Cloud ログン

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

Cloud 登録 – マプロフゔル

Cloud 登録 - IDCF APIkey,Secret Key

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

Cloud 登録

登録したCloudのゕコンに色が付きます。 最後に[Save]を忘れずに。

Scalrの操作方法

Scalr各機能の呼び出し方法

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

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

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

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

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

Wiki/Supportへのリンク

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

各一覧画面での操作説明

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

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

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

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

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

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

IDCF Cloud 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 Cloud 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側でインスタンスが作成/設

定される

Wordpress Farmの作成

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

Farmの名前設定

Farmへ名前を付けます。何でも構いません。

Roleの追加

3つのRoleを追加します。 Load balancers : lb-nginx64-centos6 Application Server : app-apache64-centos6 Database servers : mysql64-centos6 これらを使って、3Tier構成のWordpressサトを作っていきます。

各Roleを設定

追加したRoleを選択することで、各Roleの設定を行うことができます。 最低限、Cloudstack settings、MySQL settingsの設定が必要です。

クリック

選択したRoleの設定ができる。

各Roleを設定 – Cloudstack setteings

Cloudstack settingsでCloud側の設定を行います。 Service offering : VMタプの設定 Network : 複数選択できる場合はInternet側を選択 Shared IP : 必ずIPを選択してください。(Use system defaultsは選択しないでください。) ※ 追加した3Roleすべてで同一の設定を行ってください。(IPも同一のIPでOK。)

各Roleを設定 – MySQL settings

すべてのチェックボックスを外してください。 •Backup settingsはAmazon S3へのバックゕップ作成なので、IDCF Cloudでは動きません。 • Snapshot関連は、時間の関係から今回は外しておきます。 • EBS sizeは時間の関係から5GBにしてください。(IDCF Cloud上ではData Volumeが指定サズで作成されます。)

Farmを起動!

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

DNS Zoneの追加/設定

DNS Zoneを追加

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

DNS Zoneの設定

Farm : 作成したFarm Role : lb-nginx64-centos6 登録するドメンのAレコードの設定になります。 この例では「76e0bddf-77d0-4bca-a208-54701dd05fa5.scalr.ws」を名前解決すると、lb-nginx64-centos6 roleで指定したPublicIPが返されます。

Use domain automaticaly generated and provided byScalr. を選択した場合、[autogenerated name].scalr.ws と言ったドメインを利用できます。

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

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

Apache Virtual Hostの 追加/設定

Apache Virtual Hosts の追加

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

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

Zoneを指定します。

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

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

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

拡大

Apache Virtual Hosts の設定

Document root : /var/www/wordpress

Logs directory : /var/log/httpd

Server Admin’s email : local_part@domain

Server alias (space separated) : 作成したDNZ 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>

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

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

Deployment - Sources の追加

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

Deployments - Sourcesの追加

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

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

新規追加

Deployment - Applications の追加

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

Deployments - Applicationsの追加

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

拡大

新規追加

Deployments - Applicationsの追加

Pre-deploy:

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

Pre-deploy:

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

Deployments - Deploy

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

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

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

Wordpressの設定

Wordpress – DBの設定

ScalrからPHPMyAdminを起動することができます。 Farm一覧 → 作成したFarmのActions → MySQL statusを実行します。 [Setup PHPMyAdmin access]を一度実行します。「MySQL access details for PMA requested.

Please refresh this page in a couple minutes...」となるので、少し待ってから、リロードすると「Launch PHPMyAdmin」が実行できるようになります。

ただし、PHPMyAdminを実行するためには、IDCF Cloud側での設定も必要で、MySQLのRoleの設定時に指定したPublicIPに対して、作成したMySQLのンスタンスへのTCP-3306へのポートフォワードとフゔゕーウォールの設定が必要です。(次ページで説明します。)

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

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

Wordpress – DBの設定 – IDCF Cloudの設定 – ポートフォワーデゖングルール

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

MySQL Roleで指定したPublicIPを選択

ポートフォワーディング選択

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

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

プロトコル : TCP

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

Wordpress – DBの設定 – IDCF Cloudの設定 – フゔゕーウォールルール

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]を実行できます。

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

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

Wordpressセットアップ時に使用

Wordpress – Wordpressの設定 - IDCF Cloudの設定 – ロードバランサールール

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

PublicIPのTCP-80に来たパケットをロードバランシングする設定を行います。

LB Roleで指定したPublicIPを選択

ロードバランサーを選択

Wordpress – Wordpressの設定 - IDCF Cloudの設定 – ロードバランサールール

追加したロードバランサールールに対し、実際のバランシング先の設定を行います。 複数のLBンスタンスが存在する場合は、複数登録することで、バランシングできます。

作成したFarmのLB Role

で作成されたVMを選択

Wordpress – DBの設定 – IDCF Cloudの設定 – フゔゕーウォールルール

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

LB Roleで指定したPublicIPを選択

ファイアウォールを選択

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

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

Wordpress – Wordpressのセットゕップ

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

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

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

Scalrの「Farm → Actions → MySQL status」のDNS endpointsで確認した、 Writes endpoint(Private)を使います。

作成したDNS Zoneへゕクセスしてください。 http://7a6d9bc0-ba2d-41d4-97ea-9fbf8b15fbdc.scalr.ws/

Wordpress – セットゕップ完了

Scalr ユーザ会

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

■ 日本Scalrユーザ会の目的

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

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

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

top related