OpenStack リソースディスカバリー
ServiceNow ディスカバリー アプリケーションでは、OpenStack リソースディスカバリーパターンを使用して、REST API コールを通じて OpenStack リソースを検索します。 これらのリソースを検出するには、ServiceNow Store から ディスカバリーとサービスマッピングパターン アプリケーションをアップデートする必要があります。
ディスカバリーでは、OpenStack リソースディスカバリーパターンを使用して水平ディスカバリーを実行します。
ディスカバリーとサービスマッピングパターンの 2024 年 8 月ストアリリース以降、OpenStack リソースディスカバリーパターンは、プライベートとパブリックの両方のクラウドディスカバリーをサポートします。
ストアでアプリを要求する
ServiceNow Store Web サイトにアクセスして利用可能なすべてのアプリを表示し、ストアにリクエストを送信する方法について確認してください。リリースされたすべてのアプリのリリースノート情報については、「ServiceNow Storeバージョン履歴のリリースノート」を参照してください。
前提条件
- OpenStack の要件
-
- OpenStack ID サービスカタログで、OpenStack ID サービスエンドポイントとして使用されるアクセス URL を検索します。例:https://<openstack dns>:<port>。
- プロジェクトスコープトークンを生成する権限を持つ OpenStack ユーザーを構成します。トークンを生成するには、ドメイン ID、ユーザー名、プロジェクト名、およびパスワードの値を設定する必要があります。
- MID サーバーの要件
-
クラウドディスカバリー専用の MID サーバー を展開して接続します。
専用の MID サーバー は、各 OpenStack サービスのディスカバリーに備えて、OpenStack とオープンポートにアクセスできる必要があります。
- 認証情報
- Now Platform で、ServiceNow クラウドサービスアカウントの OpenStack 認証情報を作成します。OpenStack 要件 で構成したドメイン ID、ユーザー名、プロジェクト名、およびパスワードの値を入力します。詳細については、「Create and test your credentials」を参照してください。
- サービスアカウント
- Now Platform で、作成された OpenStack 認証情報と OpenStack データセンターの詳細を使用して、ServiceNow クラウドサービスアカウントを構成します。[アカウント ID] フィールドに、検出する OpenStack プロジェクトのプロジェクト ID を入力します。
- ディスカバリースケジュールの作成
-
詳細については、「クラウドディスカバリーワークスペース でのディスカバリースケジュールの作成」を参照してください。
- OpenStack サービスアカウントの自動ディスカバリースケジュールの作成 (プライベートクラウドのみ)
- [OpenStack - サービスアカウントの検出 (OpenStack - Discover Service Accounts)] パターンを使用して、OpenStack サービスアカウントの自動サーバーなしディスカバリースケジュールを作成します。詳細については、Now Support ナレッジベースの記事「Auto Cloud discovery schedule for Open stack (OpenStack の自動クラウドディスカバリースケジュール) [KB1638685]」を参照してください。
水平ディスカバリー中に ディスカバリー によって収集されるデータ
ディスカバリーでは、OpenStack リソースディスカバリーパターンを実行するときに、CMDB にデータを入力します。
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | サーバー UUID。 |
| 名前 [name] | サーバー名。 |
| ステータス [status] | サーバーステータス。 |
| 説明 [short_description] | (オプション) サーバーの説明。 |
| CPU [cpus] | VM インスタンスにプロビジョニングされるフレーバーの仮想 CPU (vCPU) の数。 |
| ディスク [disks] | VM インスタンスから返される、Cinder によるすべての管理対象ボリュームの数。 |
| ディスクサイズ (GB) [disk_size] | VM インスタンスによって使用されている Cinder によるすべての管理対象ボリュームの合計容量 (ギガバイト (GB) 単位)。 |
| メモリ (MB) [memory] | VM インスタンスがプロビジョニングされるフレーバーからの ram 値 (メガバイト (MB) 単位)。 |
| ネットワークアダプタ [nics] | VM インスタンスで構成されている一意のインターフェイスの数。 |
| ステータス [state] |
VM インスタンスに対して返されるマッピング済みステータス値。OpenStack Server のステータスおよび関連する ServiceNow [ステータス] 値は以下のとおりです。
|
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | キーペア UUID。 |
| 名前 [name] | キーペアを参照するために使用されるキーペア名。 |
| 指紋 [finger_print] | キーペアの指紋。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ロードバランサー ID。 |
| 名前 [name] | わかりやすいリソース名。 |
| 説明 [short_description] | (オプション) わかりやすいリソースの説明。 |
| インストールステータス [install_status] | リソースプロビジョニングステータス。 |
| 運用ステータス [operational_status] | リソース運用ステータス。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | リスナー ID。 |
| 名前 [name] | リソースのわかりやすい名前。 |
| インストールステータス [install_status] | リソースのプロビジョニングステータス。 |
| リスナープロトコル [listener_protocol] | リソースのプロトコル。HTTP、HTTPS、TCP、TERMINATED_HTTPS、または UDP のいずれか。 |
| リスナーポート [listener_port] | リソースのプロトコルポート番号。 |
| 運用ステータス [operational_status] | リソース運用ステータス。 |
| 説明 [short_description] | (オプション) わかりやすいリソースの説明。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | プール ID。 |
| 名前 [name] | わかりやすいリソース名。 |
| インストールステータス [install_status] | リソースプロビジョニングステータス。 |
| 運用ステータス [operational_status] | リソース運用ステータス。 |
| 説明 [short_description] | (オプション) わかりやすいリソースの説明。 |
| 負荷分散方法 [load_balancing_method] | プールの負荷分散アルゴリズム。LEAST_CONNECTIONS、ROUND_ROBIN、SOURCE_IP、または SOURCE_IP_PORT のいずれかの値。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | プールメンバー ID。 |
| 名前 [name] | わかりやすいリソース名。 |
| インストールステータス [install_status] | リソースプロビジョニングステータス。 |
| IP アドレス [ip_address] | バックエンドメンバーサーバーの IP アドレス。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ボリューム UUID。 |
| 名前 [name] | ボリューム名。 |
| ステータス [status] | ボリュームステータス。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| ストレージタイプ [storage_type] | 関連付けられているボリュームタイプ。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ボリューム UUID。 |
| 名前 [name] | ボリューム名。 |
| ステータス [status] | ボリュームステータス。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ユーザー定義のイメージ UUID。 |
| 名前 [name] | イメージ名。値は null (JSON Null データタイプ) にすることができます。 |
| ステータス [status] | イメージステータス。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ネットワーク ID。 |
| 名前 [name] | わかりやすいネットワーク名。 |
| 運用ステータス [operational_status] | ネットワークステータス。指定できる値:ACTIVE、DOWN、BUILD、または ERROR。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | サブネット ID。 |
| 名前 [name] | わかりやすいリソース名。 |
| DHCP 有効 [is_dhcp_enabled] | サブネットの DHCP が有効になっているか、無効になっているか。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | セキュリティグループ ID。 |
| 名前 [name] | わかりやすいリソース名。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| フィールド | 説明 |
|---|---|
| 名前 [name] | このフィールドの値は、object_id フィールドと同じです。 |
| オブジェクト ID [object_id] | セキュリティグループルール ID。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| Ethertype [ethertype] | Ethertype。IPv4 または IPv6 である必要があります。CIDR で表されるアドレスは、イングレスまたはエグレスルールに適合する必要があります。 |
| ポート範囲の最大値 [port_range_max] | ルールが適用される範囲の最後のポート。この値は、セキュリティグループルールと一致する範囲内の最大ポート番号です。
|
| ポート範囲の最小値 [port_range_min] | ルールが適用される範囲の最初のポート。この値は、セキュリティグループルールと一致する範囲内の最小ポート番号です。
|
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | ドメイン ID。 |
| 名前 [name] | ドメイン名。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| 有効 [enabled] | ドメインが有効か無効かを定義します。
|
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | サービス ID。 |
| 名前 [name] | サービス名。 |
| 説明 [short_description] | (オプション) わかりやすい説明。 |
| タイプ [type] | サービスタイプ。サービスによって実装された API を示します。指定できる値:Compute、ec2、identity、image、network、または volume。 |
| カタログ有効 [enabled] | サービスとそのエンドポイントがサービスカタログに表示されるかどうかを定義します。
|
| フィールド | 説明 |
|---|---|
| オブジェクト ID [object_id] | エンドポイント ID。 |
| 名前 [name] | サービス名。 |
| インターフェイス [interface] | エンドポイントの可視化を示すインターフェイスタイプ。可能な値:
|
| カタログ有効 [enabled] | サービスとそのエンドポイントがサービスカタログに表示されるかどうかを定義します。
|
| フィールド | 説明 |
|---|---|
| 名前 [name] | OpenStack フレーバーの name フィールド。 |
| オブジェクト ID [object_id] | OpenStack フレーバーの id フィールド。 |
| vCPU [vcpus] | OpenStack フレーバーの vcpus フィールド。 |
| メモリ MB [memory_mb] | OpenStack フレーバーの ram フィールド。 |
| ローカルストレージ GB [local_storage_gb] | OpenStack フレーバーの disk フィールド。 |
検出されるデータには、プライベートクラウド専用の OpenStack ハイパーバイザービュー [cmdb_ci_openstack_hypervisor_view] テーブルとそのフィールドが含まれます。
| フィールド | 説明 |
|---|---|
| 名前 [name] | hypervisor_type フィールドと hypervisor_hostname フィールドの連結された値。例:QEMU@host.acmecorp.com |
| IP アドレス [ip_address] | host_ip フィールドの値。 |
| ハイパーバイザーテクノロジー [hypervisor_technology] | hypervisor_type フィールドの値。 |
| オブジェクト ID [object_id] | id フィールドの値。 |
| ステータス [state] | state フィールドの値。 |
| バージョン [version] | hypervisor_version フィールドの値。 |
依存関係ビューマップには、REST API コールで利用できる、組織内で検出されたすべての OpenStack リソース、およびそうしたリソースの間の関係が表示されます。図 : 1. OpenStack ネットワークの依存関係
図 : 2. OpenStack VM の依存関係
CI 関係
次の表にリストされている関係は、OpenStack リソースディスカバリーをサポートするために作成されています。
| CI | 関係 | CI |
|---|---|---|
| cmdb_ci_openstack_datacenter | Hosted on::Hosts | cmdb_ci_cloud_service_account |
| cmdb_ci_cloud_openstack_service | Hosted on::Hosts | cmdb_ci_cloud_service_account |
| cmdb_ci_cloud_openstack_endpoint | Use endpoint to::Use endpoint from | cmdb_ci_cloud_openstack_service |
| cmdb_ci_cloud_openstack_endpoint | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_cloud_openstack_domain | Owns::Owned by | cmdb_ci_cloud_service_account |
| cmdb_ci_network | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_network | Contains::Contained by | cmdb_ci_cloud_subnet |
| cmdb_ci_compute_security_group | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_compute_security_group | Contains::Contained by | cmdb_ci_compute_security_group_rule |
| cmdb_ci_cloud_load_balancer | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_cloud_load_balancer | Contains::Contained by | cmdb_ci_lb_listener |
| cmdb_ci_lb_pool | Hosted on::Hosts | cmdb_ci_cloud_load_balancer |
| cmdb_ci_lb_pool | Owns::Owned by | cmdb_ci_lb_pool_member |
| cmdb_ci_storage_volume | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_vm_instance | Uses::Used by | cmdb_ci_storage_volume |
| cmdb_ci_storage_vol_snapshot | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_storage_vol_snapshot | Provisioned from::Provisioned | cmdb_ci_storage_volume |
| cmdb_ci_vm_instance | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_cloud_key_pair | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_os_template | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_vm_instance | Provisioned from::Provisioned | cmdb_ci_os_template |
| cmdb_ci_vm_instance | Virtualized by::Virtualizes | cmdb_ci_server |
次の表にリストされている関係は、プライベートクラウドでのみ OpenStack リソースディスカバリーをサポートするために作成されています。
| CI | 関係 | CI |
|---|---|---|
| cmdb_ci_vm_instance | Registered on::Has registered | cmdb_ci_openstack_hypervisor_view |
| cmdb_ci_openstack_hypervisor_view | Hosted on::Hosts | cmdb_ci_openstack_datacenter |
| cmdb_ci_openstack_hypervisor_view | Uses::Hosts Used by | cmdb_ci_server |