Moodleインスタンス管理

索引に戻る

Moodleインスタンスの管理と展開のためのインフラストラクチャは、同じ物理ホスティング内で複数の仮想化されたMoodleインスタンスを簡単に管理することを可能にします。

仮想化の原則

Moodleの仮想化は簡単です。それはほとんど絶対的な初期パスとDBの定義のために物理的な設定ファイルconfig.phpに頼るのではなく、データベースのテーブルから動的に設定値のセットを構築することから成ります。ドメイン名(仮想ホスト)に応じて、主要な設定パラメータ値のセットが選択されます。

仮想化プロセス全体をMoodle自体に統合するために、仮想化テーブルはMoodleブロックによって保持されています。

仮想化プロセス

仮想化されたMoodleアレイの全体的なライフサイクルは通常以下の通りです。

セットアップ

使用されるドメイン名のセット全体が利用可能であり、Apacheの同じDocumentRootを指している必要があります。これは、そのような仮想ホスト設定を指すワイルドカードDNSマッピングを使用して取得することもできます。

 <VirtualHost XXX.XXX.XXX.XXX>
     ServerName mastermoodle.mydomain.com
     ServerAlias * .mydomain.com
     ...
  </VirtualHost>

これらの前提条件が利用可能になり、PHPのボリュームに正しくアクセスできるようになったら、

  1. メインのMoodleインスタンス(Moodleマスタ、標準設定にバインドされている)のインストールに進みます。
  2. VMoodleブロックを標準ブロックとしてインストール
  3. VMoodle設定フックを標準設定にする(クイックインストールプロセスで述べたように)
  4. マスターMoodleの設定、一般的なコンテンツの挿入、共通設定
  5. 重要:VMoodle管理を参照できるように、VMoodleブロックのインスタンスをどこかに配置してください。

これであなたのMoodleのどこかにこれがあるはずです。

Vmoodle added.jpg

注意:適切な場所は管理ページの管理ブロックにありますが、あなたはあなたのMoodleで特別な "管理"コースを使用することもできます。

物理的にセットアップされたMoodleから仮想インスタンスをデプロイする

  1. マスタームードルの最初のスナップショットを作ります。これにより、プラットフォーム全体の複製可能なバックアップが保存されます。
  2. 最初の仮想ノードをデプロイする
  3. 最初の仮想ノードをセットアップして調整する
  4. 最初のvitualノードをノードテンプレートとしてスナップショット
  5. このテンプレートを使用して任意の数のノードをデプロイします。

次の図は、仮想化の利点を示しています。

Vmoodle architecture.jpg

VMoodleの設定

VMoodleブロックを設定するには、管理メニューのVMoodleブロック設定を参照してください。

  1. プラットフォーム展開フォームを事前設定するための命名スキーマを定義します。
  2. データベースに接続するための情報を定義します。
  3. MNETを設定するための情報を定義します。
  4. MNETピア鍵の更新に進みます。

1.スキーマを定義する

命名スキーマプリセットにより、新しいMoodleプラットフォームを定義するマスター情報を簡単に設定できます。この自動化の目的は、新しいMoodleインスタンスのセットアップをスピードアップし、情報を入力する際のエラーを減らし、複数のMoodleホストを定義するための一貫した命名ルールセットを推進することです。

Vmoodleの設定p1.jpg

スキーマフィールド:

 oスキーマの自動化:配置フォームを事前設定するようVMoodleに指示します。
 o仮想ホスト:新しいMoodleホスト名を生成するためのパターンを与えます。
 oデータベースの種類:使用するデータベースの種類を事前に設定します(MySQLまたはPostgres)。
 oデータベースホスト:データベースホスト名のプリセット値。
 oデータベースログイン:データベースユーザーログインの事前設定値。
 oデータベースパスワード:データベースユーザーパスワードの事前設定値。
 oデータベース名:データベースを命名するための生成パターンを事前設定します。
 oテーブルプレフィックス:テーブル名プレフィックスのプリセット値。
 o常時接続:プリセット値。永続的な接続はできません 
   PHPスクリプトの最後で閉じて再利用してください。
 Moodledataパス:Moodledataパスの生成パターンをプリセットします。

スキーマが自動化されている場合、プラットフォームトークンを入力すると、ホスト、データベース、およびmoodleデータパスに適切な名前が自動的に提供されます。

パターンを設定するには、パターン内で<%% INSTANCE %%>タグを使用してホストトークンに置き換えます。

例:

次のようにホスト名パターンを設定したとします。

 http:// <%% INSTANCE %%> .mydomain.com

そして、あなたは値 "moodle1"を持つトークンを入力します、配置フォームは最終的な値でパターンを置き換えます。

 https://moodle1.mydomain.com

データベース名フィールドとMoodledataパスでも同様です。

2.データベース実行可能ファイルへのパスを設定する

Vmoodle config p3.jpg

あなたが使用したいデータベースの実行可能ファイルのシステムパスのみを提供することができます(MySQLまたはPostgres)

実行可能ファイルへのパスは必ず二重引用符で囲む必要があります。

 o mysql端末へのパス:mysql(Linux)コマンドまたはmysql.exe(Windows)へのフルパス
 o mysqlダンプへのパス:mysqldump(Linux)またはmysqldump.exe(Windows)へのフルパス
 postgres端末へのパス:psqlへのフルパス(Linux)psql.exe(Windows)
 postgresダンプへのパス:pg_dump(Linux)またはpg_dump.exe(Windows)へのフルパス

構成に関する注意事項

Linuxでは、mySQLの一般的な場所は次のとおりです。

 / usr / bin / mysql
  / usr / bin / mysqldump

PostGreSQLの場合:

PostGreSQL用のクライアントパッケージをインストールすることでクライアントの実行ファイルを入手することができます。

 / usr / bin / psql
  / usr / bin / pg_dump

PostGreSQLでは、PGPASSファイルでスーパーユーザーの設定を使用して、非対話モードでPGコマンドを完全に実行することができます。

サポートノート:PostgreSQLはMysql環境よりもテストも検証もされていません。 PostGresの設定は便利さのために提供されており、ピア開発者が作業に貢献するのを助けます。

3. MNETを設定します。

Vmoodle config p2.jpg

4. MNETは自動更新をキーとします。

重要な注意:この機能はmnet / lib.phpの軽い変更に依存しています。パッチ情報は配布で提供されています

VMoodleは、同じ教育環境で動作するMoodleアレイによく使用されるため、MNET機能を多用しています。 Moodleの分散戦略は、全体的な振る舞いを向上させるためのXML-RPCアドオンの開発を要求します。 MoodleはユーザがあるMoodleから別のMoodleへ移動するとき(ジャンプ/着陸メカニズムを使用して)キーの一貫性を維持しますが、XML-RPC MNET呼び出しの場合はそうではありません。 28日ごとにサービスが中断されるリスクが高いです。

このセクションでは、VMoodleネットワーク内で自動キー更新を設定するので、キーの紛失によってWebサービスが破損する恐れがなくなります。この機能を設定する際、自分の鍵が時代遅れであることを認識した各Moodleはそれを更新し、すべてのピアにこの更新された鍵を受け入れるよう強制します。 VMoodle MNETネットワーク全体で、一貫性が継続的に自動修復されます。

 o自動更新の有効化:キーの自動更新を有効または無効にします。
 o時代遅れの先読み遅延:Moodle cronを転送するための遅延
   彼自身のMNETキーはカレンダーから外れそうです。 
 o更新の時期:陳腐化が見込まれた後に更新が行われる時期 
   トリガーされました。 

最後のパラメータを使用して、鍵交換時にユーザーが煩わされるリスクを最小限に抑えるために、適切な時間範囲で更新時間を設定します。

Vmoodleの設定p4.jpg

仮想化ムードル:出発点

Vmoodle start point.jpg

上の写真は、最初のMoodleホスト(Master Moodle)がインストールされた直後のVMoodle管理GUIを示しています。

現時点で、あなたが持つことができる唯一の可能性はさらなる展開のためにMaster Moodleをスナップショットすることです。これにより、すべてのMaster Moodleデータベースと他のMoodleのデプロイ元となる保存ファイルの保存コピーが作成されます。スナップショットが "moodledata / vmoodle"ディレクトリで成功したことを制御できます。2つのディレクトリ(1つはSQLキャプチャ用、もう1つはすべてのmoodledataファイル用)を持つ必要があります。

スナップショット手順は3ステップのウィザードです。

第1ステップ:格納ディレクトリを設定する

第2段階:データベースをダンプする

第3ステップ:moodledataのコピーを入手する

最初のMoodleテンプレートを保存すると、あなたは最初のVirtual Moodleを作ることができます。

新しいVMoodleインスタンスを定義する

新しいMoodleインスタンスをデプロイするには、マスターMoodleの管理者アカウントを入力して、VMoodleブロックの場所を参照します。 [管理]リンクをクリックします。

[プール管理]画面の[新しい仮想プラットフォームの定義]をクリックします。

File:add moodle 1.png

最初のフォームパート:

File:add moodle 3.png

フィールド:

 o名前:新しいMoodleの通常の名前。サイトのコースパラメータで設定されます。
ショートネーム:新しいホストのショートネーム。ここでトークンを使うと、 
  有効になっている場合は、スキーマ自動化パターン。
o説明:Moodleサイトコースに追加される説明。
o Host:スキーマが自動化されている場合は、これを変更する必要はありません。

File:add moodle 4.png

 oデータベースの種類:必要に応じて種類を変更します(MySQL / PostgreSQL)
oデータベースホスト:地域的な理由でここで変更してください。
oデータベースユーザログイン:Logind'accèsàla base dedonnées。
oデータベースユーザーパスワード:パスワードはパスワードで保存されています。
oデータベース名:スキーマが自動化されている場合は、これを変更する必要はありません。ご了承ください 
  このデータベースを作成してはいけません(Mysql)。
テーブルプレフィックス。
o接続持続性:現地の事情でここに変更してください。

これらのフィールドのほとんどは、すでにデフォルト設定から設定されています。

File:add moodle 5.png