AWS(北京)基礎編(5/5) 北京リージョンAPIへのアクセス

AWS(北京) の連載記事5回目になります。

 

AWS(北京)のAPI

AWS(北京)のAPIをAWS-CLIで叩いてみました。

結論を先に言うと普通に使えます。

ちなみに今までの記事では、AWS(中国)と書いていましたが、今後はAWS(北京)と書きたいと思います。

中国のAWSの会社名は、中国語表記と英語表記でそれぞれ以下となります。

  • 亚马逊通技术服务(北京)有限公司
  • Amazon Connect Technology Services (Beijing) Co., Ltd.

アクセスキー、シークレットアクセスキー、リージョンの設定

[default]
aws_access_key_id = ********************************
aws_secret_access_key = *******************************

[beijing]
aws_access_key_id =*********************
aws_secret_access_key =*******************************
region = cn-north-1

region = cn-north-1 だけですね。通常と違うところは。

上記例では、グローバルアカウントの方を[default]プロファイルで残しつつ、北京アカウント用に[beijing]というプロファイルを追加しました。

以上です!あとは同じ!

これだけではちょっと寂しいので、もうちょっとだけ。

AWS(北京)では人民元(CNY)の応答

$ aws --profile beijing cloudwatch get-metric-statistics --namespace AWS/Billing --dimensions '{"Name":"Currency","Value":"CNY"}' --metric-name EstimatedCharges --start-time `date -d '1 days ago' +%FT%TZ` --end-time `date +%FT%TZ` --period 3600 --statistics Average
{
    "Datapoints": [
        {
            "Timestamp": "2014-12-10T00:01:00Z",
            "Average": 77.4,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-09T16:01:00Z",
            "Average": 74.38,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-10T04:01:00Z",
            "Average": 80.45,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-09T20:01:00Z",
            "Average": 77.4,
            "Unit": "None"
        }
    ],
    "Label": "EstimatedCharges"
}

AWS料金はUSD(米ドル)で支払うことになっています。

Tokyoリージョンを使っていても、USD支払いですよね。

AWS(北京)は、人民元(CNY)払いです。

通常は、–dimensions ‘{“Name”:”Currency”,”Value”:”USD”}’ なのですが、

今回は、–dimensions ‘{“Name”:”Currency”,”Value”:”CNY”}’ のように書いています。

AWS(北京)APIとの通信をキャプチャして見る

通信をキャプチャする方法はいろいろあると思いますが、今回はOWASP Zapを使用しました。

owaspzap

ローカルPC上でOWASP Zapをプロキシーサーバとして動かし、そこでキャプチャしています。

上記の画面キャプチャは、以下のAWS-CLIを実行した時のものです。

monitoring.cn-north-1.amazonaws.com.cn がAPIサーバなのかなーとか、whois引くと確かに北京にありそうだなーとか、わかります。

httpsで通信するようで、SSL証明書を検証しないように–no-verify-ssl をつける必要がありました。

$ aws --no-verify-ssl --profile beijing cloudwatch get-metric-statistics --namespace AWS/Billing --dimensions '{"Name":"Currency","Value":"CNY"}' --  metric-name EstimatedCharges --start-time `date -d '1 days ago' +%FT%TZ` --end-time `date +%FT%TZ` --period 3600 --statistics Average
{
    "Datapoints": [
        {
            "Timestamp": "2014-12-09T19:38:00Z",
            "Average": 77.4,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-10T03:38:00Z",
            "Average": 80.45,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-09T15:38:00Z",
            "Average": 74.38,
            "Unit": "None"
        },
        {
            "Timestamp": "2014-12-09T23:38:00Z",
            "Average": 77.4,
            "Unit": "None"
        }
    ],
    "Label": "EstimatedCharges"
}

まとめ

AWS(北京)も普通にAPI使えそうですね。

「マネージメントコンソールで人民元表記されているけど、内部的にはUSDなんじゃない?」と疑っていましたが、そんな幻想は吹っ飛びました。

完全に中国仕様だ。

あわせて読みたい