消費税が海の向こうまで追って来た。
ちょっと前の話になりますが、2015/10のAWS料金を確認したところ、いつもよりも明らかに高い・・・。 慌ててサポートに問い合わせると以下のようなお返事が来ました。
2015年税制改正により、国境を越えた役務の提供に係る消費税の課税の見直しが行われました。 これに伴い、日本の居住者であるお客様が日本国外のリージョンを使用された場合も、新たに消費税の課税対象となりました。 具体的には、2015年10月より東京リージョン以外の全リージョンのご利用サービスが課税対象となりました。 その結果、2015年10月より消費税額が増えた形となります。
うーむ。なるほど。 サービス提供対象が日本ではないので、ヴァージニアにインスタンスを立てていたのですが、これでtax的なメリットは無くなっちゃいましたね。(それでも利用料金は2割ほどお得です)
それにしても8%って結構大きいですよね。。。
ELB等で使うSSL証明書を消してみよう
ELB等で使う証明書はデフォルトで10個しか入れておけません。 期限切れなど必要の無くなった証明書は消しましょう。
確認
今格納されている証明書一覧を表示する
aws iam list-server-certificates
結果がjson形式で表示される。
{ "ServerCertificateMetadataList": [ { "ServerCertificateId": "ASCAII*************", "ServerCertificateName": "api.naked.com", "Expiration": "2015-02-28T04:02:30Z", "Path": "/", "Arn": "arn:aws:iam::123456789:server-certificate/api.naked.com", "UploadDate": "2014-03-12T06:40:10Z" }, { "ServerCertificateId": "ASCAJI*************", "ServerCertificateName": "www.naked.com", "Expiration": "2015-03-13T14:58:03Z", "Path": "/", "Arn": "arn:aws:iam::123456789:server-certificate/www.naked.com", "UploadDate": "2014-03-27T09:13:34Z" } }
消す
証明書を消す
aws iam delete-server-certificate --server-certificate-name SSL証明書の名称
(削除したいSSL証明書の「ServerCertificateName」を入力
CloudFrontで使うためのSSL証明書をアップロードしてみよう
2015/3/23時点でCloudFrontで使う証明書はCLIでしかアップロードできません。コマンドは下記の通り。
aws iam upload-server-certificate --server-certificate-name cdn.naked.com --certificate-body file://cert --private-key file://private --certificate-chain file://chain --path /cloudfront/path/
- cert:証明書ファイル
- private:秘密鍵ファイル
- chain:中間証明書
cdn.naked.comの部分は環境に応じて適宜変更してください。
GCEでオートスケールを停止してみる
概要
デプロイのタイミングでオートスケールが発動すると色々困るので、止めます。
実行
下記のコマンドで停止可能。integration-201510290920はオートスケールを止めたいインスタンスグループの名前です。
gcloud compute -q --project "naked.co.jp:api-project-123456789" instance-groups managed stop-autoscaling integration-201510290920
結果
下記のようにオートスケールがoffになりました。
試しにstressコマンドで残りのインスタンスのCPUを使い切っても、インスタンスが追加されることはありませんでした。
ちなみにstop-autoscalingはあるけどstart-autoscalingはないです。 たぶんinstance-groups managed set-autoscalingで再設定し直せって事なんだろうと思いますが、その辺の意図は汲んでくれって感じがgoogleっぽいですね。
GCEでNATインスタンスを作ってみる
概要
GCPではexternal IPを持たないインスタンスはインターネットと通信できません。しかしDBサーバのようにセキュリティ的にexternal IPを持たせたくないけど、時々apt-getなどでソフトウェアを更新したい場合もあります。 そこで、NATインスタンスをdefault GWにして外からは直接アクセスできないけど、中からはインターネットにアクセスできる環境を作ります。
NATインスタンス構築
GUI
インスタンス内での作業
パケットフォワーディングを有効にする
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
NATの設定をする
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
ルーティング設定
GUI
Routesで新しいルーティングルールを作成
Destination IP range:0.0.0.0/0 Priority:1000 Instance tags:no-ip next-hop:specify an instance Next hop instance:gw
ファイアウォール設定
no-ipのタグ付きインスタンスからgwタグ付きのインスタンス(NATインスタンス)への通信を許可する。
GUI
Firewall rulesで新しいファイアウォールルールを作成
Source filter:instance tagsを選択 Source tags:no-ip Allowed protocols and ports:tcp:1-65535;udp:1-65535;icmp Target tags:gw
確認
no-ipのタグがついたインスタンスからinternetに向けてpingを打ったり、apt-get updateしたりして確認しましょう。