Sonar のスキャンで仮想マシンのインスタンス情報を取得できるようになりました

Kompira Sonar のスキャンについて、仮想マシンのインスタンス情報取得に対応するアップデートを行いました。
今回のアップデートにより、Azure Virtual Machines や Amazon EC2 上で動作している仮想マシンについて、インスタンスタイプやリージョンといったインスタンス情報を取得できるようになりました。
また、VMware vSphere 上で動作している仮想マシンについても、インスタンス名(仮想マシン名)など一部のインスタンス情報を取得することができます。

取得可能項目

Azure Virtual Machines

Azure Virtual Machines 上で動作している仮想マシンから取得できるインスタンス情報は下記の通りとなります。

  • インスタンス
    • プロバイダ
    • プラットフォーム
    • インスタンス ID
    • インスタンス名(仮想マシン名)
    • インスタンスタイプ(サイズ)
    • イメージ ID(オファー名)
    • リージョン(地域)
    • ゾーン(可用性ゾーン)
  • インスタンスタグ

Amazon EC2

Amazon EC2 上で動作している仮想マシンから取得できるインスタンス情報は下記の通りとなります。

  • インスタンス
    • プロバイダ
    • プラットフォーム
    • インスタンス名(※)
    • インスタンスタイプ
    • イメージ ID(AMI ID)
    • リージョン
    • ゾーン(アベイラビリティーゾーン)
  • インスタンスタグ(※)

※ インスタンス名およびインスタンスタグを取得するには、EC2 Management Console にて「インスタンスメタデータのタグを許可する」設定が必要となります。 設定方法については Amazon EC2 リソースのタグ付け インスタンスメタデータのタグへのアクセスを許可する をご参照ください。

VMware vSphere

VMware vSphere 上で動作している仮想マシンから取得できるインスタンス情報は下記の通りとなります。

  • インスタンス
    • プロバイダ
    • プラットフォーム
    • インスタンス名(仮想マシン名)
    • インスタンスタイプ(ゲスト OS タイプ)

API によるインスタンス情報の取得

下記の Sonar API によって取得できるノード情報にもインスタンス情報が追加されています。
(extraFieldsinstance フィールドが新たに追加されました。詳細は API ドキュメントをご参照ください )

  • GET /api/apps/sonar/networks/{networkId}/managed-nodes
  • GET /api/apps/sonar/networks/{networkId}/managed-nodes/{managedNodeId}
  • GET /api/apps/sonar/networks/{networkId}/snapshots/{snapshotId}/nodes
  • GET /api/apps/sonar/networks/{networkId}/snapshots/{snapshotId}/nodes/{nodeId}

リクエストの例:

$ curl -X POST -H "X-Authorization: Token aAbBcCdDeEfFgGhHiIjJkKlLmMnNoO0123456789" https://yourspace.cloud.kompira.jp/api/apps/sonar/networks/01234567-89ab-cdef-0123-456789abcdef
/managed-nodes/fedcba98-7654-3210-fedc-ba9876543210

レスポンスの例:

{
  (省略)
  "extraFields": {
    (省略)
    "instance": {
      "imageId": "ami-0bba69335379e17f8",
      "instanceId": "i-0af5281c483bcd8f1",
      "instanceName": "Kompira Enterprise 1号機",
      "instanceType": "t2.micro",
      "platform": "EC2",
      "provider": "Amazon Web Services",
      "region": "ap-northeast-1",
      "tags": [
        {
          "key": "env",
          "value": "production"
        }
      ],
      "zone": "ap-northeaset-1c"
    },
  },
}

インスタンス情報を取得するための設定方法

Azure Virtual Machines 及び Amazon EC2

仮想マシン内部から http によるメタデータ取得を行っている都合上、インスタンス情報を取得するには今までの詳細情報取得と同様に SSH もしくは WinRM の認証情報を作成する必要があります。
既に認証情報を作成済みの場合は特に追加設定等の必要はございません。

VMware vSphere

VMware vSphere 上で動作している仮想マシンのインスタンス情報については Sonar のスキャンで VMware vSphere 上の仮想マシン及び vCenter に登録されている ESXi の検出に対応しました で紹介している仮想マシンスキャンにて取得することができます。
設定方法やその他の詳細については上記ページをご参照ください。

TOP