クラウド操作ログ管理の方法(Bizホスティング Cloudn編)

作成日 2014/12/25
更新日 2014/12/25

概要

この技術情報では、Bizホスティング Cloudn(以下、Cloudn)のアカウントののAPI呼出しの記録(以下、Cloudn操作ログ)を取得し、蓄積とログ監視する方法を説明します。これは、Cloudn操作ログをローカルサーバに取得し加工し、Hinemosによって監視することで実現します。Cloudn操作ログをローカルサーバに取得し加工するスクリプト(クラウド操作ログ取得スクリプト)は、本技術情報からダウンロードできます。

この技術情報は、Cloudn上でシステムを構築しようとしている、または既に構築済みのユーザを対象としています。

<参考情報>
Hinemosの[実践]入門の本が出ました。Hinemosをもっと詳しく知りたい方は、以下の書籍がお勧めです。

Hinemos統合管理[実践]入門

課題

技術情報「クラウド操作ログ管理の方法(AWS CloudTrail編)」を参照してください。

メリット

技術情報「クラウド操作ログ管理の方法(AWS CloudTrail編)」を参照してください。

前提条件

この技術情報を用いる上で前提条件を説明します。

・Cloudnアカウント
 読者のCloudnアカウントを利用します。
 クラウド操作ログ取得スクリプトは、CloudStack cloudmonkey CLIにてCloudn APIにアクセスするため、Cloudnアカウントのアクセスキーとシークレットキーが必要になります。

対象環境

この技術情報を適用する環境について説明します。本技術情報では、CentOS 6.5、Hinemos v4.1の環境を想定します。

クラウド操作ログ取得スクリプトの動作環境

・インターネットに接続可能なLinuxサーバ
 Cloudnのエンドポイントに接続可能なインターネット接続環境が必要です。
 オンプレミス環境、仮想化環境、パブリッククラウド環境上の何れも問いません。

・CloudStack cloudmonkey CLI、pythonのインストール
 CloudStack cloudmonkey CLI、pythonを使用します。
 セットアップ方法はクラウド操作ログ取得スクリプトのREADMEを参照してください。

・Hinemosのインストール不要
 クラウド操作ログ取得スクリプトを動作させるだけの場合には、Hinemosのインストールは不要です。

本技術情報の動作環境

Hinemosを使ってCloudn操作ログの監視や蓄積をするため、クラウド操作ログ取得スクリプトの動作するサーバにHinemosエージェントのインストールが必要になります。スモールセットの環境は以下の通りです。

実現方法/解決策

技術情報を実現する方法について説明します。

1.クラウド操作ログ取得スクリプトのセットアップ
2.Hinemosログファイル監視設定

1.クラウド操作ログ取得スクリプトのセットアップ

[Cloudn操作ログとは]
クラウド操作ログ取得スクリプトは、Cloudn操作ログをAPI経由で取得します。Cloudn操作ログはサービスによってAPIが異なります。現在、クラウド操作ログ取得スクリプトで対応しているCloudnサービスは以下の通りです。

- 東日本リージョン Compute VPC OpenNWタイプ(listEvents)
 (http://www.cloudn-service.com/guide/manuals/html/vpcopennw-api/rsts/ComputeStyle/ManageEvents/listEvents.html)

- 東日本リージョン Compute FLATタイプ(listEvents)
 (http://www.cloudn-service.com/guide/manuals/html/flat-api/rsts/ComputeStyle/ManageEvents/listEvents.html)

Cloudn操作ログの長期保存や指定の操作に対するアラートは別の仕組みが必要となります。

[クラウド操作ログ取得スクリプトとは]
クラウド操作ログ取得スクリプトは、Cloudn操作ログに対して、ヘッダ項目を抽出し、Hinemos及び他のプログラムから操作が簡易にできるように1イベント1行に変換してローカルのファイルへ出力するプログラムです。

- Cloudn操作ログのラインコンバーター
 複数行で表示されるJSON形式のCloudn操作ログを1イベント1行に変換します。

- ヘッダ項目を抽出
 1イベント1行に変換する際に、Cloudn操作ログとして重要なイベント出力時刻(created)等を抽出して、毎回既定の順で行の左側から表示されるようにします。

本スクリプトはLinuxのタスクスケジューラのcronで定期的に実行します。本スクリプトは次のファイルを出力します。<profile>は、CloudStack cloudmonkey CLIに指定するプロファイル名になります。

- Hinemosから監視する対象のログファイル
 /var/log/cloudn/operationlog/<profile>/CloudnOperationLog.log

クラウド操作ログ取得スクリプトは以下のリンクからダウンロードしてください。

クラウド操作ログ取得スクリプト for Cloudn のダウンロード

セットアップ方法は、ダウンロードファイルの中に含まれるREADME.txtを参照してください。

2.Hinemosログファイル監視設定

Hinemosログファイル監視機能を使用して、CloudnOperationLog.logを監視します。ログファイル監視の「チェック設定」の項目では、以下の内容を指定します。<profile>はユーザの環境によって異なるので適宜変更してください。

[ログファイル監視のチェック設定]
ディレクトリ:/var/log/cloudn/operationlog/<profile>
ファイル名(正規表現):CloudnOperationLog.log

ログファイル監視で設定するパターンマッチの例は次の「利用例/ユースケース」で紹介します。

利用例/ユースケース

Cloudn操作ログのでは、typeにて操作の一覧を識別できます。

- 東日本リージョン Compute VPC OpenNWタイプEventTypeのフォーマット
 (http://www.cloudn-service.com/guide/manuals/html/vpcopennw-api/rsts/APIInfo/referrence_data.html#eventtypeinfo)

- 東日本リージョン Compute FLATタイプEventTypeのフォーマット
 (http://www.cloudn-service.com/guide/manuals/html/flat-api/rsts/APIInfo/referrence_data.html#eventtypeinfol)

例えば、イメージ作成の場合は「.*VM.CREATE.*」というパターンマッチ文字列でヒットさせることができます。

アラートを上げたいものを正規表現で指定し、それ以外は「.*」で指定する事で全てのログをHinemosのイベントとして蓄積することもできます。

免責事項

本ソフトウェアの使用・本ドキュメントに従った操作により生じたいかなる損害に対しても、 弊社は一切の責任を負いません。

注意事項

本ドキュメントの内容を実施すると、Cloudnにおいて料金が発生する場合があります。Cloudnの料金体系等を理解した上で操作を実施してください。

本ドキュメントにおいて、2014年12月現在の Cloudnのサービスに従い記載しておりますが、Cloudnのサービス変更に伴い、これらの操作が変更となる可能性があります。

Compute以外のサービスの操作ログについても、今後拡張を検討しております。

- RDB (DescribeEvents)
- Logging (DescribeEvents)
- AutoScaling (DescribeScalingActivities)
- Object Storage (PUT Logging)
- Provisioning (CreateStack)

関連情報

お問い合わせ