なるほど分かった!microsoft azureでmoodle!

41
ななななななななMicrosoft Azure な Moodle! ななななななななななな ななななな ななななななななな なな なな

Upload: takayuki-fuwa

Post on 24-Jan-2017

425 views

Category:

Education


10 download

TRANSCRIPT

Page 1: なるほど分かった!Microsoft AzureでMoodle!

なるほどわかった!Microsoft Azure で

Moodle!こだまリサーチ株式会社 テクニカル・エヴァンジェリスト

不破 崇行

Page 2: なるほど分かった!Microsoft AzureでMoodle!

こんにちは!

不破 崇行 ( ふわ たかゆき )こだまリサーチ株式会社所属 テクニカル・エヴァンジェリスト

• 開発から保守を担当しつつ、各種セミナー講演などを担当

• 社内では AWS/Azure 案件を担当しています

• クラウド / オンプレミスサービスを活用した教育 IT ソリューションを提供しています

Page 3: なるほど分かった!Microsoft AzureでMoodle!

今日のハンズオンの目的

• 「なるほどわかった!」と言ってもらうこと• クラウドサービスを通じて簡単な Moodle サイト構築を体験する• クラウドサービスの勘所を理解する

• 今回は Microsoft Azure( あじゅーる ) を使用しますが、他のクラウドサービスの話も極力絡めるようにします

Page 4: なるほど分かった!Microsoft AzureでMoodle!

お願い

• 今回は Microsoft Azure というクラウドサービスを使用します。• クラウドサービスの利用料は皆様各自で負担して下さい• Azure 登録後 2 ヶ月の無料枠で収まるようにします。

• ハンズオン後に使用した Azure 利用料につきましても、各自でご負担下さい。

• 「インスタンスの止め忘れ」などによる課金発生にご注意下さい

Page 5: なるほど分かった!Microsoft AzureでMoodle!

「クラウドサービス」とは?

• 小規模から大規模までのサーバ / ネットワークを簡単に構築することが出来る「サービスの総称」• 世界的には、 AWS(Amazon Web Services), Microsoft Azure などが有名

• 従来あった VPS, レンタルサーバのサービスを更に進化させたイメージ

Page 6: なるほど分かった!Microsoft AzureでMoodle!

クラウドサービスの良いところ( 主に AWS/Azure の場合 )• 「使った分だけお金がかかる」仕組み (Pay as you go)

• 仮想マシンの場合、起動させた「時間 (/h) 」とサーバスペックで決まります。• シャットダウンさせている時間は課金されません

• 伸縮自在 ( スケールアウト / スケールイン )• 「必要なときに」、「必要なときだけ」サーバを増やしたり減らしたり出来る• 台数を増やすことも出来るし、サーバのスペックを減らすことも可能

• ハードウェアの事を考えなくても良い• ハードウェア (HDD/SSD など ) は全てクラウドサービスが管理してくれる• このため高い耐障害性を誇る

• 高いセキュリティ• AWS/Azure の場合、データセンターは ISO27001 認定• オンプレミス環境よりもセキュアに管理されています。

Page 7: なるほど分かった!Microsoft AzureでMoodle!

Azure における Moodle の立て方

• “Azure VM”(Windows/Linux 仮想マシン ) を作成• 自分で Apache/PHP/MySQL をインストールします

• “Azure App Service” を使う• IIS, PHP などが既にインストールされている環境• Moodle のソースコードをアップするだけで動く• 昔のレンタルサーバを高機能にしたイメージ

• 今回は App Service を使用します。

Page 8: なるほど分かった!Microsoft AzureでMoodle!

今回の構築イメージと方針

• Web サーバ 1 台 + DB サーバ 1 台

• ソースコードは Moodle 公式サイトから git 経由で取得する• 最小構成で、後でスケールアウト出来

る設計を目指す WebサーバDBサーバ(MySQL)

Page 9: なるほど分かった!Microsoft AzureでMoodle!

実践! Azureここから実際に手を動かしていきます!

Page 10: なるほど分かった!Microsoft AzureでMoodle!

Azureポータルにログインする

• https://portal.azure.com で Azureポータルにログインする• ( 事前に Azure のサインアップが必要です )

Page 11: なるほど分かった!Microsoft AzureでMoodle!

App Service を作成

• Web サーバとなる、 App Serviceを作成します• 左側から

• 「 +新規」→• 「 Web+モバイル」→• 「 App Service 」

• の順番にクリックします

Page 12: なるほど分かった!Microsoft AzureでMoodle!

App Service の設定

作成したい Moodle の URL を設定( 自由入力。ただし重複は出来ない )

リソースグループを設定今回は”MoodleHandson”

Page 13: なるほど分かった!Microsoft AzureでMoodle!

料金プランを選択するなんでもよいここでは”MoodlePlan”

データセンターの場所を選ぶ今回は” Japan East” を選択

S1 Standard を選ぶ

Page 14: なるほど分かった!Microsoft AzureでMoodle!

App Service のデプロイ開始

• 最後に「作成」をクリックすると、デプロイが始まります。• Azure側で初期構築が行われ、数分で完了します。

Page 15: なるほど分かった!Microsoft AzureでMoodle!

App Service のデプロイが完了すると

•次のように表示されたら、完了です。

Page 16: なるほど分かった!Microsoft AzureでMoodle!

App Service の設定変更

• PHP のバージョンは「 PHP7 」を選択してください

Page 17: なるほど分かった!Microsoft AzureでMoodle!

Moodle のソースコードを取得してデプロイする

Page 18: なるほど分かった!Microsoft AzureでMoodle!

Moodle のソースコードを取得する

https://github.com/moodle/moodle.git

MOODLE_31_STABLE

git

外部リポジトリ

Page 19: なるほど分かった!Microsoft AzureでMoodle!

ソースコードデプロイ時の注意点

• デプロイ中は App Service の設定を変更しないで下さい• 高確率でデプロイに失敗します• デプロイに失敗した場合は、一度「切断」を行って再度デプロイしてください

Page 20: なるほど分かった!Microsoft AzureでMoodle!

データベースサーバ作成

• MySQL サーバは別で用意します。• App Service のメニューに「 MySQL( プレビュー ) 」という項目が

ありますが、試験稼働中のサービスなので今回は使用しません

• 今回は ClearDB というサードパーティー提供の MySQL DB を使用します。

Page 21: なるほど分かった!Microsoft AzureでMoodle!

データベースサーバ作成

MySQL データベース

Page 22: なるほど分かった!Microsoft AzureでMoodle!

データベースサーバ作成

「水星」を選択する( 今回は無料でいきます )

Titan以上のプランを使用する場合はクレジットカードの登録が必要です

Page 23: なるほど分かった!Microsoft AzureでMoodle!

データベースサーバ作成

「購入」をクリック

Page 24: なるほど分かった!Microsoft AzureでMoodle!

データベースサーバ作成と確認

•接続情報などを「プロパティ」から確認します。

Moodle インストール時に使用する設定情報

Page 25: なるほど分かった!Microsoft AzureでMoodle!

Moodle サイトへアクセスする

• これで一通り Moodle インストールの準備が出来ました• 「リソースグループ」から、最初に

作った App Serviceへ進み、 Moodleの URL を確認し、ブラウザでアクセスします。 「 URL 」の部分のアクセス

用の URL があります( 自分のドメインに変更することも出来ます )

Page 26: なるほど分かった!Microsoft AzureでMoodle!

Moodle上でインストーラを起動する

• Moodleへアクセスする際、「 http://」を「 https://」に置き換えてください• Azure 提供のドメインを使用する場合、無料で SSL接続を使うことが出来ます

Page 27: なるほど分かった!Microsoft AzureでMoodle!

Moodle上でインストーラを起動するmoodledata の設定• MySQL サーバを作成したと

きの設定を見ながら入力する

Page 28: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストールDB サーバの設定• “Imploved MySQL( ネイティブ /mysqli)” を選択して「次へ」を

クリック

Page 29: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストールDB サーバの設定• 「データベース名」

は、 Azure の「接続文字列」に書かれています。

•赤字の部分 (acsm~ ) の部分を「データベースユーザ」に入力してください

Database=acsm_18cc380993d746f;Data Source=ja-cdbr-azure-east-a.cloudapp.net;User Id=be9ddc27edbd0e;Password=685f87c5

Page 30: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストールサーバチェック画面• 既に PHP の拡張機能は全て入っ

ているので、このまま使えます。

• 「次へ」は押さないでください!

Page 31: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストール続きはコマンドラインで実行• サーバスペック (特に Free) を使用すると、インストールの途中で処理が停止してしまう可能性があります。• このため、タイムアウトが発生しない「コマンドライン」での実行に切り替えます。• この方法は Azure以外でも使えます。

Page 32: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストール続きはコマンドラインで実行• 「 Advanced Tools 」を選択し、

「 Go 」をクリック

Page 33: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストール続きはコマンドラインで実行• 「 Debug console 」の

「 CMD 」をクリック

Page 34: なるほど分かった!Microsoft AzureでMoodle!

Moodle インストール続きはコマンドラインで実行•赤枠の部分をクリックし、次のコマンド

を入力します。

•以上でインストール完了です。

php site\wwwroot\admin\cli\install_dabatase.php --lang=cs --adminpass=soMePass123 --agree-license

Page 35: なるほど分かった!Microsoft AzureでMoodle!

App Service のメリット

• 実行環境が全てそろっている• IIS と PHP などがインストール済みです。• ミドルウェアのバージョンアップは Azure が自動的に実施してくれます。

Page 36: なるほど分かった!Microsoft AzureでMoodle!

ハンズオン後の片付け

• 今回作成した App Service/ClearDB一式を削除する場合は「リソースグループ」を削除すると全て削除することが出来ます。

Page 37: なるほど分かった!Microsoft AzureでMoodle!

クラウドサービスの勘所とハマりポイント

Page 38: なるほど分かった!Microsoft AzureでMoodle!

学校におけるクラウドサービスの勘所

• 「伸縮自在」を有効活用する• 試験期間中や課題締め切り前などはスペックアップする• 逆に、夏休み・冬休み期間中はギリギリまでスペックを落とす

• 上手に「伸縮自在」をすることで、コストダウンを図ることが出来る。

3 月1 月 12 月9 月7 月 8 月4 月

スペ

ック

夏休みはスペックを下げる試験期間中はスペックを上げる

Page 39: なるほど分かった!Microsoft AzureでMoodle!

固定金額と従量課金、違いは?代表的なサービス メリット デメリット

月額固定サービス ・さくらの VPS・Serversman@VPS

・月額料金が明確になるため、料金を見積もりしやすい

・スケールアウトが出来ない( 出来ても OS インストールからやりなおしになる )

従量課金サービス ・ Azure・ AWS

・「使った分だけ」かかる・サーバ再起動だけでサーバスペックを増やす事が出来る・動画配信サービスなど機能が非常に多い

・月額料金に変動が発生する。

2016年 9 月 13 日時点での情報です

Page 40: なるほど分かった!Microsoft AzureでMoodle!

ハマりポイント

• うっかり使いすぎてしまった!• 通称「クラウド破産」• AWS の場合は「課金アラート」 (請求予定額が指定金額を超える ) を

設定することが出来ます。• Azure の場合は、サブスクリプション ( プリペイドのようなもの ) を使い切っ

たら自動停止するように設定出来ます。

• スケールアップには再起動を伴う• スケールアップには再起動を伴うため、授業中にスケールアップするのは運用上厳しい場合があります。

Page 41: なるほど分かった!Microsoft AzureでMoodle!

ありがとうございました!

•本日のハンズオンは以上です。• 今回のハンズオンが、先生方による円滑な授業運営に

お役に立てることを切に願っております。

• ご質問などありましたら、どうぞご遠慮なく不破までお問い合わせ下さい。• [email protected]