このドキュメントでは、APIC-EMのプラットフォームで利用されているGrapevineというフレームワークについて説明しています。また、APIC-EM で動作している各サービスの確認手順について説明しています。
Grapevine
APIC-EMでは、内部のアーキテクチャとしてGrapevineというフレームワークを利用しています。GrapevineはPaaS (Platfrom as a Service)の考え方と類似したアーキテクチャで、必要なサービスを動的に配備することで、スケーラブルな仕組みを実現しています。
APIC-EMのアーキテクチャを論理的に示します。
上位のアプリケーションが、ユーザインタフェース上で確認することのできるアプリケーションです。これらのアプリケーションのリクエストは、RESTful APIのリクエストとして、APIC-EMの中で動作する各サービスに転送されます。
下層にあるGrapevineは、各サービスの生成・起動・停止といった管理や、サービスを生成するためのClient VMの生成・起動といった管理を動的に実施しています。
Grapevineでは必要なサービスを起動するにあたり、まずClient VMというVirtual Machine (Linux コンテナ)を起動します。Client VMは起動後、Root VMと呼ばれるVMに対し、指示されたサービスをダウンロードし、そのサービスを起動します。このため、いくつかのコアサービスを除き、ほとんどのサービスはClient VMで動作します。
Grapevine 上で実行されている Client VM やサービスの確認は、Grapevine Developer Console とよばれる GUI か、もしくはSSHでAPIC-EMにアクセスし、CLIで確認できます。
サービスの確認
Grapevine コアサービスの確認
Grapevine コアサービスの確認はCLI上から可能です。
1. SSHクライアントで、APIC-EMにアクセスします。ユーザアカウントは "grapevine" です。
2. "sudo service grapevine status" で Grapevine のコアサービスの状態を確認します。全て RUNNING であれば正常です。
$ sudo service grapevine status
grapevine is running
grapevine_beacon RUNNING pid 30243, uptime 0:11:11
grapevine_capacity_manager RUNNING pid 30549, uptime 0:11:02
grapevine_capacity_manager_lxc_plugin RUNNING pid 30247, uptime 0:11:11
grapevine_cassandra RUNNING pid 30244, uptime 0:11:11
grapevine_root RUNNING pid 30537, uptime 0:11:03status
APIC-EM サービスの確認
APIC-EMの各サービスが正常に起動しているかどうかの確認は、Grapevine Developer Console で確認する手順と、CLIで確認する手順の2種類があります。
Grapevine Developer Console での確認
1. https://<APIC-EMのアドレス>:14141/ にアクセスし、ユーザ・パスワードを入力します。APIC-EMの管理画面と同じユーザです。
2. Overviewでサービスのリストが表示されるので、サービスが Active (緑色のボックス)であることを確認します。赤い場合はサービスが Fail しています。色がない場合は Inactive (サービスが起動していない) 状態です。クラスタリングしている場合は、サービスによっては複数のノードが同じサービスを起動するため、1つのサービスに複数のボックスがある場合があ ります。
CLI での確認
1. SSHクライアントで、APIC-EMにアクセスします。ユーザアカウントは "grapevine" です。
2. grape instance display で起動している各サービスの詳細情報を確認できます。下の例では見やすいように各サービス名(service_type)と起動状態(state)のみをフィルタしています。
$ grape instance display | egrep " (service_type|state)"
ca7ab0ec-a64c-4c94-94ea-52a155a5be65 service_type cas-service
ca7ab0ec-a64c-4c94-94ea-52a155a5be65 state running
ca7ab0ec-a64c-4c94-94ea-52a155a5be65 service_type rbac-service
ca7ab0ec-a64c-4c94-94ea-52a155a5be65 state running
dcfd92bc-607e-41c8-a243-471c92155a30 service_type identity-manager-pxgrid-service
dcfd92bc-607e-41c8-a243-471c92155a30 state running
...