Sakura no-yuube-20140327

Post on 30-Jun-2015

1.541 views 2 download

Transcript of Sakura no-yuube-20140327

(C)Copyright 1996-2014 SAKURA Internet Inc.

さくらのクラウドでのウェブサービスかんたん運用術~ Docker をつかってみた~

福岡編

第 17 回 さくらの夕べ in 福岡田中邦裕  (@kunihirotanaka)

2

目次

2

1 自己紹介

「さくらのクラウド」のご紹介

Docker をつかってみた

1

2

3

3

• 名前   :田中邦裕(たなかくにひろ)• 年齢   : 36 歳• 出身   :大阪(今も一応、大阪在住) • 趣味

• プログラミング–計算機科学方面ではなく、何かを動かすのが好き

• 電子工作–ラジオから AVR( マイコン ) まで

• DTM– SC-55 を皮切りにパソ通などにアップしていた

• 旅行&鉄道–北海道から沖縄まで国内専門、あと乗り鉄

• アニメ–人並み程度に視聴

自己紹介

@kunihirotanakahttp://facebook.com/kunihirotanaka

4

日曜プログラミングしています

• さくらのクラウドも最初は個人で作ってました• 昔は Apache ドキュメント翻訳やってました• いわゆるジェネレーター系サイトやってます

5

日曜プログラミングしています

6

日曜プログラミングしています

7

日曜プログラミングしています

8

日曜プログラミングしています

• 自分しか使わないアプリ作りも好きです。

9

日曜プログラミングしています

• 自分しか使わないアプリ作りも好きです。

10

• さくらインターネットの紹介

11

さくらインターネットの紹介

1996 年 京都府舞鶴市にて創業1998 年 大阪市中央区へ移転1999 年 株式会社化、東京支社開設

大阪・東京へ IDC を新設2005 年 東証マザーズへ上場2011 年 石狩 IDC を新設

商号 さくらインターネット株式会社

本社所在地 大阪市中央区南本町一丁目 8 番 14 号

設立年月日1999 年 8 月 17 日(サービス開始は 1996 年 12 月 23日)

取締役

代表取締役 社長 田中 邦裕取締役 副社長  舘野 正明取締役      川田 正貴取締役      村上 宗久取締役(社外)  野村 昌雄

上場年月日 2005 年 10 月 12 日(東証マザーズ)

決算 3 月末日

資本金 8 億 9,530 万円

従業員数 225 名

1996 年からサービスを行うデータセンター・ホスティングの老舗です

12

さくらインターネットの事業

12

当社サービス別売上高構成比(’ 13/3 期)

その他

ホスティング58.2 %

ハウジング32.8 %

データセンターサービス

ホスティング

仮想ホスティング:

物理ホスティング:

・ VPS ・クラウドサービス

・専用サーバサービス・レンタルサーバサービス

コロケー

ショ

ンスペース貸し  :

ラック貸し   : ・ハウジングサービス

既存サービス

新たなサービス

・大規模ハウジング案件(石狩 DC )

データセンターサービスを幅広く手掛けるが、近年ではクラウド・ホスティング系が2/3以

上に

13

数字で見るさくらインターネット(四半期決算)

(金額:百万円)

科目名‘13/3期 ’14/3期 前四半期比

Q1 Q2 Q3 Q4 Q1 Q2 Q3 増減額 増減率

ハウジング 760 757 786 805 793 776 716 ▲59 ▲7.7%

 構成比 32.5% 32.5% 33.2% 33.0% 32.1% 31.3% 28.3%

専用サーバ 751 729 686 688 679 656 644 ▲12 ▲1.8%

 構成比 32.1% 31.3% 29.0% 28.2% 27.5% 26.5% 25.4%

レンタルサーバ 463 475 489 504 517 537 548 10 1.9%

 構成比 19.8% 20.4% 20.7% 20.7% 20.9% 21.7% 21.6%

VPS・クラウド 143 155 200 232 260 286 319 33 11.8%

 構成比 6.2% 6.7% 8.5% 9.5% 10.5% 11.5% 12.6%

その他 221 212 207 210 222 221 305 84 37.9%

 構成比 9.4% 9.1% 8.7% 8.6% 9.0% 8.9% 12.1%

中でも、 VPS ・クラウドは高い伸び

14

北海道石狩市にデータセンターを作ったりもしています

15

「さくらのクラウド」のご紹介

16

「さくらのクラウド」のご紹介その前に!

17

祝LXC 1.0.0リリース

18

祝CentOS 6.5

Dockerサポート!

19

キャンペーンは終わりましたが、さくら賞の「桜葉愛グッズ」のうち

ステッカーを参加者全員にプレゼント!

20

「さくらのクラウド」のご紹介

21

「さくらのクラウド」のコンセプト

「開発者志向のシンプルクラウド」

何の変哲もない IaaS型クラウドを圧倒的なコストパフォーマンスで提供する

22

さくらのVPSが

スケールできて、ネットワークが自由に組めれば

いいよね

23

それが、さくらのクラウド

24

インスタンスというより

サーバーといった感覚

25

たくさんのサーバを

たくさんのサーバーを

26

かんたんに追加し

かんたんに追加し

27

アップグレードしたりダウングレードしたり

アップグレードしたりダウングレードしたり

28

複製してスケールアウトさせたり

複製してスケールアウトさせたり

29

かんたんに削除できます

かんたんに削除できます。

30

ロードバランサーもあります

ロードバランサーもあります

31

月額料金

転送量課金のない、固定制の課金形態で

32

日割料金

日割り課金も対応しており

33

新しい時間割料金表

昨年から時間割料金にも対応しています。

34

料金プランは選択する必要なし

20 日以上つかうと月額料金が自動適用され経済的。

35

従量課金制なし、事前に料金が予想できる

転送量課金がないため、事前に料金計算ができます。お客様がサーバーを増減させない限り固定料金です。

他社同等プラン( Small )

さくらのクラウド( 1 コア 2GB )

0

5000

10000

15000

20000

25000

30000

35000

40000

料金比較 ( 従量課金適用時( 1.6TB/ 月)

基本料金

36

ブラウザからサーバにアクセス

リモートスクリーン機能を使えば、ブラウザからサーバにアクセスできます

37

PXEブートの設定も可能で

PXE ブートの設定も可能で

38

OSの選択も可能で

OS の選択も可能で

39

boot オプショ ンの変更も可能で

boot オプショ ンの変更も可能で

40

シングルユーザーモードにだって

シングルユーザーモードにだって

41

シングルユーザーモードにだってなれます

シングルユーザーモードにだってなれます

42

fstab を変更したり

fstab を変更したり

43

iptables を変更したり

iptables を変更したり

44

パニックが起きた後も確認できます

パニックが起きた後も確認できます

45

ネットワークも自由に組めます

ネットワークも自由に組めます

46

NIC を追加して

NIC を追加して

47

線を伸ばして

線を伸ばして

48

ネットワーク接続もできます

ネットワーク接続もできます

49

「物理データセンター」とも接続できます

ハイブリッド接続を利用すれば「物理データセンター」である「さくらの専用サーバ」や「リモートハウジング」と接続可能

50

ディスクの取り扱いも便利です

サーバを起動しなくても、ディスク修正を行うことができます。

51

コピー機能でスナップショ ットも取れます

サーバにつなげられる「ディスク」と、つなげられないけど安価な「アーカイブ」へ、ワンタッチでスナップショ ットを作成できます。

52

さくらのVPSからワンタッチでコピー出来ます

さくらのVPSのスナップショ ットをとり、20 分~ 90 分程度でさくらのクラウドへ

コピーさせることが可能です。

53

SSD の提供もあります。それもHDDと同価格!

「標準プラン」でも一般的な HDDよりも性能が良く、同価格で提供している 20GB の SSD はさらにパフォーマンスが優れてます

IOPSの比較

54

標準でAPIをサポート

REST形式でアクセス可能で、 /server/ ならサーバ一覧など、直観的なAPIアクセスを実現。

$ curl --user “APIKEY":“SECRET" https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/server/Index":0,"ID":"112400226821","Name":"git\u30b5\u30fc\u30d01","HostName":"localhost","Description":"","ServiceClass":"cloud\/plan\/1","CreatedAt":"2012-05-07T00:19:44+09:00“,"Icon":{"ID":"112500078923","URL":"https:\/\/secure.sakura.ad.jp\/cloud\/zone\/is1a\/api\/cloud\/1.1\/icon\/112500078923.png","Name":"\u30cd\u30b3","Sc$ curl --user “APIKEY":“SECRET" -H 'X-Sakura-API-Beautify:1' https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/server/"From": 0, "Count": 29, "Total": 29, "Servers": [ { "Index": 0, "ID": "112400226821", "Name": "git\u30b5\u30fc\u30d01", "HostName": "localhost“,

55

CLI “sacloud” も用意しています。$ sudo ~/.nave/nave.sh usemain stable[sudo] password for tanaka:######################################################################## 100.0%installed from binary$ sudo npm install -g sacloud$ sacloud config --apiRoot="https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/"/home/tanaka/.sacloudcfg.json:{ "apiRoot": "https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/"}$ sacloud config --accessToken=APIKEY --accessTokenSecret=SECRET/home/tanaka/.sacloudcfg.json:{ "apiRoot": "https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/", "accessToken": “APIKEY", "accessTokenSecret": “SECRET"}$ sacloud show serverGET https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/server.json?{} -> 200 OK (1/1) ~1.539sec+--------------+--------------------+--------+---------------------+| id | name | status | created at |+--------------+--------------------+--------+---------------------+| 112400226821 | git サーバ 1 | up | 2012-05-07 00:19:44 |+--------------+--------------------+--------+---------------------+| 112500271369 | www2 | up | 2013-06-20 00:27:33 |+--------------+--------------------+--------+---------------------+| 112400258152 | rp1 | up | 2012-05-28 15:35:11 |

56

CSV や TSV 出力も可能です$ sacloud show server --csvid,name,status,created at112400226821,git サーバ 1,up,2012-05-07 00:19:44112500271369,www2,up,2013-06-20 00:27:33112400258152,rp1,up,2012-05-28 15:35:11112500271375,www1,up,2013-06-20 00:29:42112500271998,www3,up,2013-06-20 06:58:37112500272024,www4,up,2013-06-20 07:09:54

$ sacloud show server --tsvid name status created at112400226821 git サーバ 1 up 2012-05-07 00:19:44112500271369 www2 up 2013-06-20 00:27:33112400258152 rp1 up 2012-05-28 15:35:11112500271375 www1 up 2013-06-20 00:29:42112500271998 www3 up 2013-06-20 06:58:37112500272024 www4 up 2013-06-20 07:09:54

57

もちろん json 出力も可能です$ sacloud show server --json[{ "requestInfo": { "time": 1393585261726, "method": "GET", "url": "https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/server.json?{}", "path": "server" }, "request": {}, "responseInfo": { "time": 1393585262494, "latency": 768, "length": 55217, "serial": "b63869571cb83144b68dc73e8d7ed9fe", "status": 200, "statusText": "OK", "type": "resources", "key": "servers" }, "response": { "from": 0, "count": 29, "total": 29, "servers": [

58

サービスの強化にも積極的です

・ Windows Server 追加・ VPS からのクラウドへのマイグレーショ ン機能追加・ SLA・時間割課金・第 2ゾーン提供開始・小容量から大容量ディスクへのコピー機能・ゾーン間接続機能・ Windows VDI サービス提供開始・アーカイブのゾーン間コピー機能提供開始・スタートアップスクリプト機能ベータ提供開始・ブートデバイス順序指定タグ・ルータ+スイッチの IPv6対応 (β)・準仮想化ネットワークドライバ対応・パケットフィルタ機能強化

この半年で追加した機能

59

スタートアップスクリプト

サーバ作成時に任意のシェルスクリプトを「スタートアップスクリプト」から選択して

おけばサーバ起動時に実行させることができます。

60

自作スタートアップスクリプトも作れます

例えば、 Docker がセットアップ済みのサーバーを

作ることなんかもできます。

61

git からのインポートも対応予定

他の人の作ったスタートアップスクリプトをベースに、簡単にサーバー立ち上げができるように!

62

ということで

63

宣伝は終わりです

64

Docker をやってみよう!

65

まず Immutable Infrastructure の勉強

運用中はサーバーの変更をしない!Immutable = 状態を変えられない

新しい設定やアプリを入れる時には、新しい設定をしたサーバーを新しく立ち上げ

66

まず Immutable Infrastructure の勉強

Server 1アプリサー

Server 2アプリサー

バServer 3

DB サーバ

ロードバランサー

現行環境

最初の環境

67

まず Immutable Infrastructure の勉強

10/25 – アプリケーションの修正Server 4

アプリサーバ

Server 5アプリサー

バServer 3

DB サーバ

ロードバランサー

現行環境

アプリの修正のため Server4 と Server5 を新規に立ち上げ

68

まず Immutable Infrastructure の勉強

10/25 – アプリケーションの修正

1/15 – DB サーバーにセキュリティパッチ適用

Server 4アプリサー

Server 5アプリサー

バServer 3

DB サーバ

ロードバランサー

Server 4アプリサー

Server 5アプリサー

バServer 6

DB サーバ

古い環境

現行環境

DB サーバにパッチをあてるべく Server6 を立ち上げ

69

まず Immutable Infrastructure の勉強

10/25 – アプリケーションの修正

1/15 – DB サーバーにセキュリティパッチ適用

Server 4アプリサー

Server 5アプリサー

バServer 3

DB サーバ

3/1 – アプリサーバの設定変更&増設(予定)

ロードバランサー

Server 4アプリサー

Server 5アプリサー

バServer 6

DB サーバ

Server 8アプリサー

Server 9アプリサー

バServer 6

DB サーバServer 7

アプリサーバ

古い環境

現行環境

新しい環境

新しい環境をつくり、テストを開始

70

1/15 – DB サーバーにセキュリティパッチ適用

まず Immutable Infrastructure の勉強

3/1 – アプリサーバの設定変更&増設

ロードバランサー

Server 4アプリサー

Server 5アプリサー

バServer 6

DB サーバ

Server 8アプリサー

Server 9アプリサー

バServer 6

DB サーバServer 7

アプリサーバ

現行環境

どんどん、新しい環境へ切り替えて、古い環境は捨てる

古い環境

71

でもサーバーをたくさん借りるとお金がかかる

サーバーをたくさん借りるとお金がかかる

新しい環境作るたびにVPSや EC2 借りるの?

もったいないよね。

72

サーバーの上に自分でサーバーを作れれば…

それなら、借りたサーバー上に仮想的にサーバー環境を作ればいいじゃん。

サーバーの上にコンテナを載せて。

73

ここでコンテナの登場!

ハードウェア

ホスト OS

ハイパーバイザー

ゲスト OS

プロセス

プロセス

ゲスト OS

プロセス

プロセス

ハードウェア

ホスト OS

プロセス

プロセス

プロセス

プロセス

完全仮想化 コンテナ

コンテナはハイパーバイザーを挟まないライトウェイトな仮想化ソリューション赤の他人同士で使うのは気が引けるが、

内輪で仮想化するならもってこい。

74

ここでコンテナの登場!

ハードウェア

ホスト OS

ハイパーバイザー

ゲスト OS

プロセス

プロセス

ゲスト OS

プロセス

プロセス

ハードウェア

ホスト OS

プロセス

プロセス

プロセス

プロセス

完全仮想化 コンテナ

コンテナはハイパーバイザーを挟まないライトウェイトな仮想化ソリューション赤の他人同士で使うのは気が引けるが、

内輪で仮想化するならもってこい。

VPS・仮想サーバ

ゲスト OS

プロセス

プロセス

プロセス

プロセス

コンテナ

75

Docker の紹介

Linux では LXC というコンテナ技術があるがいささか使いにくい(という人が多い)

それを手軽にしたのが Docker

76

Docker の紹介

コンテナサーバー1

コンテナサーバー2

コンテナサーバー3

借りた IaaS クラウドや VPS などのサーバー

LXCDocker

LXC を手軽に使えるインターフェースを備え、サーバーを作って壊すが簡単にできます。

77

ではインストール

$ sudo wget -P /etc/yum.repos.d http://www.hop5.in/yum/el6/hop5.repo$ sudo yum install xz docker-io -y

CentOS 6.5 から Docker をサポートしたので、ワンタッチでインストール可能

78

インストールが完了すれば起動させる

$ sudo wget -P /etc/yum.repos.d http://www.hop5.in/yum/el6/hop5.repo$ sudo yum install xz docker-io -y$ sudo service docker startStarting cgconfig service: [ OK ]Starting docker: [ OK ]$

service docker start で Docker が起動される

79

Docker を使う

$ sudo docker run –i –t centos /bin/bash

docker run すると、新しいコンテナが作られ、引数で指定されたコマンドが実行される

TTY を利用できるように

する

コンテナの標準入力を有効にする

80

Docker を使う

$ sudo docker run –i –t centos /bin/bashbash-4.1# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.1 0.0 11304 1584 ? S 07:22 0:00 /bin/bashroot 8 0.0 0.0 13364 1060 ? R+ 07:22 0:00 ps aux

docker run すると、新しいコンテナが作られ、引数で指定されたコマンドが実行される

引数で指定したコマンドが PID=1 として実行され

81

Docker を使う

$ sudo docker run –i –t centos /bin/bashbash-4.1# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.1 0.0 11304 1584 ? S 07:22 0:00 /bin/bashroot 8 0.0 0.0 13364 1060 ? R+ 07:22 0:00 ps auxbash-4.1# hostname7749f193be9cbash-4.1# ifconfigeth0 Link encap:Ethernet HWaddr A6:B8:BE:38:82:F3 inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::a4b8:beff:fe38:82f3/64 Scope:Link

引数で指定したコマンドが PID=1 として実行され

コンテナの ID がホスト名として付与され

ホスト側と異なるIP アドレスが付与される

docker run すると、新しいコンテナが作られ、引数で指定されたコマンドが実行される

82

Docker を使う

$ sudo docker run –i –t centos /bin/bashbash-4.1# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.1 0.0 11304 1584 ? S 07:22 0:00 /bin/bashroot 8 0.0 0.0 13364 1060 ? R+ 07:22 0:00 ps auxbash-4.1# hostname7749f193be9cbash-4.1# ifconfigeth0 Link encap:Ethernet HWaddr A6:B8:BE:38:82:F3 inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::a4b8:beff:fe38:82f3/64 Scope:Link~略~bash-4.1# exit$

コンテナが exit されると、そのコンテナは破棄される

引数で指定したコマンドが PID=1 として実行され

コンテナの ID がホスト名として付与され

ホスト側と異なるIP アドレスが付与される

83

• docker で実行されるのは引数で指定したコマンドだけ– /bin/bash を実行しても sshd は実行されない– /usr/bin/sshd のように直接指定する必要がある

押さえておくポイント (1)

通常のサーバ docker の場合

/sbin/init

httpd

sshd

bash

ps

bash

ps

httpdCGI

CGI

sshd

bash

84

• docker を立ち上げるたびに新しい環境–通常のサーバーと違い再起動するとデータは巻き戻る

押さえておくポイント (2)

Docker イメージCentOS

Docker コンテナ

Docker コンテナ

Docker コンテナ

Docker コンテナ

docker run

docker run

docker run

docker run

相互に干渉はしない

85

終了したコンテナの一覧を見る

$ sudo docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORT NAMES7749f193be9c centos /bin/bash 3 hours ago Exit 0 naughty_feynmanec2a32c5673d centos /bin/bash 8 hours ago Exit 1 pensive_curie69f83a9a94849 centos /bin/bash 8 hours ago Exit 1 thirsty_lumiere6db258573742 centos /bin/bash 8 hours ago Exit 0 suspicious_mclean

終了したコンテナのデータは、明示的に削除しない限り、残されている

86

終了したコンテナからイメージを作る

$ sudo docker commit 7749f193be9c centos:test9f96c865d261b982cc2266b5cfba0af39da57111b53b476a9179a3be2a475966$ sudo docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEcentos test 9f96c865d261 23 seconds ago 599.5 MB

終了したコンテナをコミットすると、イメージ化されて、 docker run させることが

できる

新しいイメージに付与する

タグを指定

87

Docker におけるイメージとコンテナの関係

コンテナc1ae0d1372d8

イメージcentos: latest

docker run

イメージからコンテナを作成し run する

88

Docker におけるイメージとコンテナの関係

コンテナc1ae0d1372d8

コンテナ15cb2a03c788

コンテナd7580743d875

イメージcentos: latest

docker run

run するたびに、新しいコンテナが生成される

イメージからコンテナを作成し run するrun するたびに新しい環境が作られる

89

Docker におけるイメージとコンテナの関係

コンテナc1ae0d1372d8

コンテナ15cb2a03c788

コンテナd7580743d875

イメージcentos:test

イメージcentos: latest

docker run

docker commit

run するたびに、新しいコンテナが生成される

commit して、イメージ化する

イメージからコンテナを作成し run するコンテナを commit すると新しいイメージが

作られる

90

Docker におけるイメージとコンテナの関係

コンテナc1ae0d1372d8

コンテナ15cb2a03c788

コンテナd7580743d875

イメージcentos:test

イメージcentos: latest

docker run

docker commit

run するたびに、新しいコンテナが生成される

commit して、イメージ化する

コンテナ45e540c71952

docker run

イメージからコンテナを作成し run するコンテナを commit すると新しいイメージが

作られる

91

先ほどイメージ化したものから起動

最初に実行したコマンドがhistory に残っているのがわかる。

$ sudo docker run –i –t centos:test /bin/bashbash-4.1# history 1 ps aux 2 hostname 3 ifconfig 4 exit 5 historybash-4.1# exit$

先ほどイメージに付与したタグを指定

92

LAMP 環境を作ってみよう

93

Docker による LAMP環境作成

一つの Docker 内で複数サービスを動作させるために、 monit を使用する

monit

docker

Apache fluentd sshd

Docker コンテナ

MySQL

94

インストール手順( 1 )

$ git clone https://github.com/kunihirotanaka/docker-centos-lamp.gitInitialized empty Git repository in /home/tanaka/docker-centos-lamp/.git/remote: Counting objects: 32, done.remote: Compressing objects: 100% (24/24), done.remote: Total 32 (delta 11), reused 26 (delta 8)Unpacking objects: 100% (32/32), done.$ cd docker-centos-lamp/$ lsDockerfile README.md monit.conf monit.mysqld monit.td-agent td.repoLICENSE authorized_keys monit.httpd monit.sshd td-agent.conf

Dockerfile という定義ファイルを取得する

95

インストール手順( 2 )

Dockerfile を編集

FROM centosMAINTAINER Kunihiro Tanaka

ENV IP __YOUR_IP_ADDRESS_HERE__ENV PW __YOUR_PASSWORD_HERE__ENV LOGSERVER __YOUR_LOG_SERVER_HERE__

FROM centosMAINTAINER Kunihiro Tanaka

ENV IP 192.168.50.3ENV PW Jhd30KwjENV LOGSERVER logserver.example.jp

Dockerfile 変更前 Dockerfile 変更例

96

インストール手順( 3 )

$ sudo docker build -t centos:lamp .~略~Successfully built c94a7828a3a9$ sudo docker images[sudo] password for tanaka:REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEcentos lamp c94a7828a3a9 About a minute ago 1.156

docker build を実行けっこう時間かかります。

新しく作成されるイメージに付与するタグ

97

起動する

$ sudo docker run -d -t -p 12812:2812 -p 10080:80 -p 10022:22 ¥ centos:lamp /usr/bin/monit –I65d63382ebac74066290024a096fc291cf054435e1d10331ee1a03ac7e5e0c65

先ほどの Docker イメージから monit を起動する。

monit に -I オプションで、フォアグラウンド実行。

-d はデーモンとしてバックグラウンド実行させる -p はポート転送

98

起動する

$ sudo docker run -d -t -p 12812:2812 -p 10080:80 -p 10022:22 ¥ centos:lamp /usr/bin/monit –I65d63382ebac74066290024a096fc291cf054435e1d10331ee1a03ac7e5e0c65$ sudo docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES65d63382ebac b3f874bbbd97 /usr/bin/monit -I 49 seconds ago Up 48 seconds 0.0.0.0:10022->22/tcp, 0.0.0.0:10080->80/tcp, 0.0.0.0:12812->2812/tcp prickly_lovelace

docker ps すると、 monit が実行されていることが

確認できる

99

monit へアクセスしてみる

docker の動いているサーバの 12812 番ポートdocker なら http://192.168.1.1:12812/

ユーザ名は admin 、パスワードは monit

100

phpMyAdmin でアクセスしてみる

docker の動いているサーバの 10080 番ポート192.168.1.1 なら http://192.168.1.1:10080/phpmyadmin/

ユーザ名は root 、パスワードは先ほどのもの

101

構築完了

ということで

構築完了しました!

102

本日いらっしゃった皆様に

2 万円分の「さくらのクラウド」無料クーポンを差し上げます

ご登録は 2014 年 5 月末まで、 1 年間有効です。すでに利用されている方でも、クーポンが初めてであればご利用頂けます。

103

ご清聴ありがとうございました

• フィードバック、感想よろしくお願いします• 他のイベントにも、ぜひ呼んでいただければ幸いです

–ハッシュタグ  #sacloud –公式 Twitter   @sakuracloud–ブログや Twitter での感想をお待ちしております

104

[参考 ] さくらのクラウドのベンチマーク

0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000 4 コア 8GB 2 コア 2GB 1 コア 2GB

Large Medium Small

※UnixBench Index Score

6/19 (水) 6/20 (木) 6/21 (金) 6/22 (土)

MAX 4303 AVE 3818 MIN 3464

MAX 2707 AVE 2425 MIN 2180

MAX 1629 AVE 1589 MIN 1521

MAX 325 AVE 304 MIN 291

MAX 619 AVE 563 MIN 472

MAX 161 AVE 152 MIN 142