冗長化
Cisco CallManager では、次の冗長化の機能を提供しています。
• データベースの冗長化:クラスタ内の Cisco CallManager は、共有しているデータベースのバックアップ コピーを維持しています。
• コール処理の冗長化:Cisco CallManager グループでは、ある Cisco CallManager が使用不能になった場合、そのコール処理を引き継ぐバックアップ Cisco CallManager が指定されています。この形式の冗長化は、デバイス フェールオーバーと呼ばれます。
• メディア リソースの冗長化
• CTI の冗長化
この章の構成は、次のとおりです。
• 「Cisco CallManager 冗長化グループ」
• 「データベースの冗長化」
• 「メディア リソースの冗長化」
• 「CTI の冗長化」
• 「参考情報」
Cisco CallManager 冗長化グループ
Cisco CallManager では、Cisco CallManager 群とその関連デバイスの階層を論理的に構成し、その構成要素をグループとクラスタと呼んでいます。グループとクラスタの構成要素は、必ずしも物理的な位置と関連しているわけではありません。
クラスタとは、ある特定の共通データベースを共有している Cisco CallManager をセットとして集めたものです。Cisco CallManager ソフトウェアをインストールした後の設定時には、どのサーバ群とどの Cisco CallManager 群が同じクラスタに属するかを指定します。またパブリッシャ データベースを収容するサーバも指定します。
グループは、3 台までの Cisco CallManager を優先順に並べたリストです。各グループには、1 つまたは複数のデバイス プールを関連付けます。これで、コール処理の冗長性が得られます。Cisco CallManager Administration を使用して、グループ定義、各グループに属する Cisco CallManager の指定、各デバイス プールに対する Cisco CallManager グループの割り当てを行います。
Cisco CallManager グループ
Cisco CallManager グループとは、最大 3 台の Cisco CallManager を優先順に並べたリストです。各グループには、必ずプライマリ Cisco CallManager を指定し、1 台または 2 台のバックアップ Cisco CallManager を含めます。グループ内で Cisco CallManager をリストしている順番が、優先順位になります。
Cisco CallManager グループには、冗長化と回復の 2 つの機能があります。
• フェールオーバー:グループ内のプライマリ Cisco CallManager に障害が起きると、フェールオーバーが行われ、デバイスはそのグループのバックアップ Cisco CallManager に再登録されます。
• フェールバック:障害を起こしたプライマリ Cisco CallManager がサービスを再開すると、そのグループのデバイスはプライマリに再登録されます。
通常の動作時には、グループのプライマリ Cisco CallManager が、そのグループに関連した登録済みデバイス(電話機やゲートウェイなど)すべてのコール処理を制御します。
プライマリ Cisco CallManager に何らかの理由で障害が起きた場合は、グループ内の第 1 バックアップ Cisco CallManager が、プライマリ Cisco CallManager に登録されていたデバイスの制御権を引き継ぎます。同じグループに第 2 バックアップ Cisco CallManager を指定してある場合は、プライマリおよび第 1 バックアップの Cisco CallManager の両方に障害が起きた場合に、第 2 バックアップがデバイスの制御権を引き継ぎます。
障害を起こしたプライマリ Cisco CallManager がサービスを再開すると、グループの制御権を再び引き継ぎ、そのグループのデバイスはプライマリ Cisco CallManager に自動的に再登録されます。
Cisco CallManager グループにデバイスを関連付けるには、デバイス プールを使用します。各デバイスは 1 つのデバイス プールに割り当てることができ、それぞれのデバイス プールは 1 つの Cisco CallManager グループに関連付けることができます。必要なレベルの冗長性を得るために、グループとデバイス プールをさまざまな方法で組み合せることが可能です。たとえば、図 7-1 は、800 台のデバイスを制御する 3 台の冗長 Cisco CallManager を備えた簡単なシステムの例を示しています。
図 7-1 Cisco CallManager グループ
図 7-1 では、Cisco CallManager グループ G1 は、デバイス プール DP1 および DP2 の 2 つに割り当てられています。CCM1 は、グループ G1 のプライマリ Cisco CallManager であり、通常の動作時には DP1 と DP2 内の 800 台のデバイスをすべて制御します。CCM1 に障害が起きると、800 台すべてのデバイスの制御は CCM2 に渡されます。CCM2 にも障害が起きると、800 台すべてのデバイスの制御は CCM3 に渡されます。
図 7-1 に示す例では、コール処理には冗長性が得られる構成ですが、コール処理の負荷が 3 台の Cisco CallManager 間で適切に分散されていません。負荷バランシングの詳細については、「デバイスの分散による冗長化と負荷バランシング」を参照してください。
デバイスの分散による冗長化と負荷バランシング
Cisco CallManager グループは、コール処理の冗長化と分散型コール処理の両方を実現します。デバイス、デバイス プール、および Cisco CallManager をグループ間でどのように振り分けるかによって、システムの冗長化と負荷バランシングのレベルが決まります。
グループ内の 1 台の Cisco CallManager に障害が起きた場合に、残りの Cisco CallManager が過負荷にならないように、デバイスを分散しておく必要があります。図 7-2 では、3 台の Cisco CallManager と 800 台のデバイスから構成されるシステムの場合に、分散型コール処理および冗長化の両方を実現できる Cisco CallManager グループとデバイス プールの設定例を示しています。
図 7-2 分散型コール処理と組み合せた冗長化
図 7-2 では、Cisco CallManager CCM1 が G1 と G2 の 2 つのグループのプライマリ コントローラになるように、Cisco CallManager グループが設定され、デバイス プールに割り当てられることを示しています。CCM1 に障害が起きた場合、デバイス プール DP1 の 100 台のデバイスは CCM2 に再登録され、DP2 の 300 台のデバイスは CCM3 に再登録されます。同様に、CCM2 はグループ G3 と G4 のプライマリ コントローラになります。CCM2 に障害が起きた場合、DP3 の 100 台のデバイスは CCM1 に再登録され、DP4 の 300 台のデバイスは CCM3 に再登録されます。CCM1 と CCM2 の両方に障害が起きた場合は、すべてのデバイスが CCM3 に再登録されます。
分散型コール処理の詳細については、「コール処理の負荷バランス」を参照してください。
データベースの冗長化
Cisco CallManager Administration 内でコンフィギュレーションを変更すると、パブリッシャ サーバはその変更内容をまずローカル データベースに保存します。その後、パブリッシャはクラスタ内のサブスクライバ サーバすべてに新しいデータを送信し、サブスクライバ サーバはデータベースのローカル コピーを更新します。このメカニズムにより、クラスタ内のサーバ全体でコンフィギュレーション データベースの一貫性が保たれます。また、何らかの理由で、パブリッシャが使用不能になっても、サブスクライバ サーバはデータベースの読み取り専用のローカル コピーを使用して動作を継続できるため、データベースの冗長化も実現します。
また、データベースの冗長化は、IP Phone、ゲートウェイ、DSP リソースの登録など、実行時データの伝搬および複製にも役立ちます。クラスタ内のサーバはすべてこの実行時データを共有するので、クラスタおよび関連したゲートウェイのメンバー間でコールの最適なルーティングが可能になります。
メディア リソースの冗長化
メディア リソース リストを使用して、メディア リソース グループを優先順に並べたリストを指定することにより、メディア リソースの冗長化が実現します。アプリケーションは、メディア リソース リストに指定されている優先順位に従って、必要なメディア リソースを使用可能なメディアの中から選択できます。メディア リソースの冗長化の詳細については、「メディア リソースの管理」を参照してください。
CTI の冗長化
CTI は、コンピュータ ベースのアプリケーションとテレフォニー機能間のインターフェイスを提供します。CTI では、さまざまな冗長化メカニズムを使用して、次の主要コンポーネントに起きた障害を回復します。
• Cisco CallManager
• Cisco CTIManager
• CTI を使用するアプリケーション
CTI は、Cisco CallManager 冗長化グループを使用して Cisco CallManager の障害を回復します。Cisco CTIManager 自体に起きた障害から回復するには、CTI を使用するアプリケーションに対してプライマリ Cisco CTIManager とバックアップ Cisco CTIManager を指定することができます。それでも、アプリケーションに障害が生じる場合は、Cisco CTIManager はそのアプリケーションに宛てられたコールを転送電話番号にリダイレクトします。