Alibaba Cloudのサポートに問い合わせてみた

Alibaba Cloudで不具合を発見したので、サポートに問い合わせてみました。
不具合は表示に関するもので、機能上は問題なかったのですが、少し気になったので。
Alibaba Cloudのサポート内容はサポートセンターの説明ページで確認できますが、ざっと以下のようになっています。

  • 無料
  • チケットによる受付
  • 日本語
  • 24時間365日

問い合わせ方法

チケット起票

f:id:n_watanabe:20181124010055p:plain

コンソールの右上から、More > テクニカルサポート > 新規チケット起票 を選択します。

質問内容を選択

f:id:n_watanabe:20181124010105p:plain

質問を書く

f:id:n_watanabe:20181124010110p:plain

起票完了

f:id:n_watanabe:20181124010112p:plain

チケットの内容は後からでも確認できます。

結果

めっちゃ早い修正入りました。

  • 2018-11-22 07:36:06 質問
  • 2018-11-22 07:36:37 受付
  • 2018-11-22 07:57:00 一時回答
  • 2018-11-22 08:22:03 一部の修正完了の報告
  • 2018-11-22 11:41:45 修正完了の報告

もちろん、毎回こんな早いのかわかりません。
問い合わせの内容やエンジニアの負荷状況にもよると思いますが、今回は想像以上に早くて驚きました。

Alibaba Cloud CDNで無料SSL証明書を使ったコンテンツ配信

Alibaba CloudにはCDNがありますが、ICPが必要と思っている方も多いと思います。
正しくは、「中国大陸のCDNサーバを使う場合はICPが必要」でした。
CDN作成の際に「海外」を選択すれば、何事もなく利用できます。
また、最近はHTTPSが必須となっていますが、Alibaba Cloud CDNなら無料で証明書を取得できます。
では、以下に手順を記載します。

構成図

今回作成する構成です!

f:id:n_watanabe:20181121223954p:plain

前準備

オリジンサーバ作成

適当にWebサーバを作成します。
今回はAliyun Linuxで以下のようにしてhttpdを起動しました。

# yum install httpd
# cat << EOS > /var/www/html/index.html
<html>
<head><title>Hello World!</title></head>
<body>
Hello World!
</body>
</html>
EOS
# systemctl start httpd

オリジンサーバ向けのDNSレコード作成

今回はaliyunコマンドでDNSレコードを追加してみます。
(パブリックアドレスはxx.xx.xx.xxと伏字にしています。)

作成済みのドメイン「aliclo.net」にAレコード「origin-test」を追加しました。

~$ aliyun alidns AddDomainRecord --DomainName aliclo.net --RR origin-test --Type A --Value xx.xx.xx.xx
{"RecordId":"4161129131759616","RequestId":"CD3A4C26-7A8E-400D-B4E8-2F954AB2B9B3"}

手順

Alibaba Cloud CDN作成

コンソールで設定してみます。

f:id:n_watanabe:20181121233719p:plain

Alibaba Cloud CDNの画面で、V2.0を促されたので、そちらで設定してみます。

f:id:n_watanabe:20181121233830p:plain

ドメインの追加」をします。

f:id:n_watanabe:20181121233932p:plain

ポイントは「アクセラレーションリージョン」です。
中国本土を含まないようにすると、ICPは不要です。

f:id:n_watanabe:20181121234344p:plain

「情報審査」フェーズが見えますが、中国本土を含まないため自動的にスキップしました。

CDN向けのDNSレコード作成

f:id:n_watanabe:20181121234746p:plain

CDNドメインが追加されているのが確認できます。
このCNAMEをDNSレコードに追加する必要があります。

~$ aliyun alidns AddDomainRecord --DomainName aliclo.net --RR cdn-test --Type CNAME --Value cdn-test.aliclo.net.w.kunlunsl.com
{"RecordId":"4161156398220288","RequestId":"AE871A59-5C20-4FCA-954E-56ADB02421F3"}

CNAMEを追加しました。

f:id:n_watanabe:20181121235228p:plain

少し表記が変わりました。

この時点でHTTPではCDNのURLでアクセスできるようになります。

無料証明書の作成

昨今、HTTPSが必須の風潮があるのでCDNHTTPS化します。
HTTPSにするためには、サーバ証明書が必要です。
Alibaba Cloud CDNでは無料のサーバ証明書が利用できます。

f:id:n_watanabe:20181122000706p:plain

f:id:n_watanabe:20181122000721p:plain

f:id:n_watanabe:20181122000734p:plain

f:id:n_watanabe:20181122000746p:plain

申請中となります。
しばらく待ちましょう。

f:id:n_watanabe:20181122001446p:plain

今回は3分程度したら、有効になりました。

f:id:n_watanabe:20181122003234p:plain

HTTPSでアクセスできるようになりました。

Alibaba Cloudのアイコン

Alibaba Cloudのアイコンをダウンロードしてみました。

これで構成図書けそうです。

中国版

阿里云产品图标

help.aliyun.com

PowerPoint

Visio

PNG、AI、SVG

ここのアイコンの量が一番多いです。
ただ、Github、阿里城、新浪微博アカウントのいずれかが必要です。

f:id:n_watanabe:20181129084508p:plain:w300

美しいアイコンがたくさん!

f:id:n_watanabe:20181129210136p:plain:w300

International版

Alibaba Cloud icons

www.alibabacloud.com

PowerPoint

Visio

結局

Iconfont-阿里巴巴矢量图标库 からのダウンロードが一番良さそうです。

DNSサーバをAlibaba Cloud DNSへ変更する

私はAliEatersというAlibaba Cloudのユーザー会に参加しました。

ただ、ユーザーという割には、学習以外にはまだAlibaba Cloudのサービスを実戦投入していませんね。

そこで、今回は本ブログのドメインであるaliclo.netのDNSサーバをAlibaba Cloud DNSへ変更してみます。

1.Alibaba Cloud DNSでの作業

1-1.ドメイン名の追加

コンソールのAlibaba Cloud DNSの画面でドメイン名の追加をします。

f:id:n_watanabe:20181118012954p:plain

f:id:n_watanabe:20181118013123p:plain

1-2.レコードの追加

変更元のDNSサーバと同じ設定を入れます。

f:id:n_watanabe:20181118013212p:plain

f:id:n_watanabe:20181118013413p:plain

1-3.Alibaba Cloud DNSサーバの確認

Alibaba Cloud DNSのサーバは、ns7.alidns.comとns8.alidns.com と確認できました。

f:id:n_watanabe:20181118013533p:plain

f:id:n_watanabe:20181118013554p:plain

2. DNSサーバの切り替え

ムームードメインドメイン名の管理をしている場合の例です。

f:id:n_watanabe:20181118013834p:plain

3.確認

ステータスが標準になりました。

f:id:n_watanabe:20181118013955p:plain

f:id:n_watanabe:20181118014039p:plain

NSレコードがns7.alidns.comとns8.alidns.comになったのが確認出来ました。

~$ dig aliclo.net NS

; <<>> DiG 9.10.6 <<>> aliclo.net NS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56970
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;aliclo.net.            IN  NS

;; ANSWER SECTION:
aliclo.net.     21599   IN  NS  ns8.alidns.com.
aliclo.net.     21599   IN  NS  ns7.alidns.com.

;; Query time: 346 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Nov 18 01:41:14 JST 2018
;; MSG SIZE  rcvd: 85

4.その他に調べたこと

4-1. 料金

エンタープライズDNSとベーシックDNSがあるようですが、今回はベーシックDNSを使いました。

価格 - 価格| Alibaba Cloud ドキュメントセンター

ベーシックDNS このサービスは無料です。

4-2. DNSサーバの場所

ベーシックDNSは、"主に"中国にあるとのこと。

特徴 - プロダクト紹介| Alibaba Cloud ドキュメントセンター

国際的に認定されたBGPデータセンターは、エンタプライズDNSサービスを提供します。ノードは、米国東部、米国西部、シンガポール、香港、オーストラリア、中国張北、中国杭州に配備されています。

注意:Alibaba Cloud エンタプライズDNSとベーシックDNSは、異なるDNSクラスタに属します。高度なDNSはグローバルデータセンターを使用し、ベーシックDNSのデータセンターは主に中国上海、中国張北、中国深セン、中国杭州にあります。

Alibaba CloudでVSwitchを作る

Alibaba CloudのVSwitchは、AWSにおけるSubnet的なものと考えれば良さそうです。

1本目の記事がVPC作成で、2本目でSubnet作成だけ。

我ながら何と地味なことか。

コンソールでVSwitchを作成する

コンソールでのVSwitch作成は、VPC作成時に一緒に作ってしまうこともできます。

あとは下記画面のように後から追加作成することもできます。

f:id:n_watanabe:20181115225820p:plain

以上で今回は終わってもいいのですが、もうちょっと見ていきます。

CreateVSwitchの説明を読む

aliyunコマンドのhelpについて

aliyun vpc CreateVSwitch で作成できるようです。

ところで、aliyunコマンドは適当なところにhelpを入れると説明が出力されます。

~$ aliyun vpc help CreateVSwitch
Alibaba Cloud Command Line Interface Version 3.0.2

Product: Vpc (Virtual Private Cloud)
Link:    https://help.aliyun.com/api/vpc/CreateVSwitch.html

Parameters:
  --ZoneId      String  Required
  --CidrBlock   String  Required
  --VpcId       String  Required
  --VSwitchName String  Optional
  --Description String  Optional
  --ClientToken String  Optional

パラメータの中でどれがRequiredで、どれがOptionalがわかりやすいですね。

APIドキュメント(中国語)

CLIの説明ページではないですが、APIの説明ページへのリンクも表示されています。

中国語ですが、重要なこと書いてあるので、日本語にしておきます。

> 每个VPC内的交换机数量不能超过24个。
1つのVPC内のVSwitchは24個を超えることはできない。
> 每个交换机网段的第1个和最后3个IP地址为系统保留地址。以192.168.1.0/24为例,192.168.1.0、192.168.1.253、192.168.1.254和192.168.1.255这些地址是系统保留地址。
Switchの先頭アドレスと最後の3つのアドレスはシステムによって予約されている。
192.168.1.0/24を例にとると、192.168.1.0、192.168.1.253、192.168.1.254、192.168.1.255はシステムで予約されている。
> 交换机下的云产品实例数量不允许超过VPC剩余的可用云产品实例数量(15000减去当前云产品实例数量)。
Switch配下のクラウド製品のインスタンスの数は、VPCの残りの利用可能なクラウド製品のインスタンスの数を超えてはならない(15000から既にあるインスタンスの数を引いた数)。

少し定義がぼんやりしているように感じました。

云产品实例はECSだけのことなのか、それとも他のサービスも含むのか、わかりませんでした。

もっとも、普通は1つのVPCで15000使い切ることないと思うので、問題になることほぼ無いでしょう。

> 一个云产品实例只能属于一个交换机。
1台のクラウドインスタンスは一つのVSwitchにのみ所属できる。

AWSは1台のインスタンスに異なるSubnetのENIをアタッチできますが、Alibaba Cloudではできないのかもしれません。

AWSでも通常は一つのSubnetだけなので問題ないですが、仮想アプライアンスとか使う時に困るかもしれません。

(3rdパーティ提供の仮想アプライアンス等あるのかまだ調べてないですが)

> 交换机不支持组播和广播。 交换机创建成功后,网段无法修改。
Switchはマルチキャストとブロードキャストをサポートしない。
Switch作成後はネットワークセグメントを変更できない。

これはAWSと同じですね。

APIドキュメント(日本語)

後から気づいたのですが、実は日本語のドキュメントもありました。

VSwitch の作成 - API リファレンス| Alibaba Cloud ドキュメントセンター

ただ、 現在、クラウドプロダクトインスタンスの数は 10,000 個までです と書いていて、中国語版の15000という数字とは異なりました。

まあ、どちらにせよ大きな数字なんで、普通は問題にならないでしょう。

CLIでVSwitchを作成する

VPCを作成するところからやってみます。

VPC作成

~$ aliyun vpc CreateVpc \
--CidrBlock 10.0.0.0/16 \
--VpcName vpc-practice
{"RequestId":"1FFE2387-5C23-4496-8CFD-CD7C29EE20FD","ResourceGroupId":"rg-acfnwbkqz24vhca","RouteTableId":"vtb-6wevhlhn09uk9x1dd7st3","VpcId":"vpc-6weerrlggnvaopcjeofit","VRouterId":"vrt-6wels8467qfs1207bzrti"}

Zoneの確認

東京リージョンは、ap-northeast-1aの1つだけでした。

~$ aliyun vpc DescribeZones
{"RequestId":"7260630D-53FE-4B13-B8DC-DA34E9579415","Zones":{"Zone":[{"ZoneId":"ap-northeast-1a","LocalName":"亚太东北1 可用区A"}]}}

VSwitch作成

2つ作成してみます。

~$  aliyun vpc CreateVSwitch \
--VpcId vpc-6weerrlggnvaopcjeofit \
--ZoneId ap-northeast-1a \
--VSwitchName TestSwitch01 \
--CidrBlock 10.0.1.0/24
{"RequestId":"3F404B34-5A16-4E6D-85D3-91713E720ED4","VSwitchId":"vsw-6wevz7trx939u9rsyuypi"}
~$ aliyun vpc CreateVSwitch \
--VpcId vpc-6weerrlggnvaopcjeofit \
--ZoneId ap-northeast-1a \
--VSwitchName TestSwitch02 \
--CidrBlock 10.0.2.0/24
{"RequestId":"7B1D6D1B-6CFE-418F-B2B3-DC89CAA00DDB","VSwitchId":"vsw-6we7kbj16aa913a6di4on"}

Alibaba CloudでVPCを作る

業務ではAWSを使っていますが、Alibaba Cloudに手を出してみます。

今回はVPC作成です。

コンソールでのVPC作成

f:id:n_watanabe:20181113221100p:plain

CIDRが3つからしか選択できませんでした。

自分で数値入力できなくなってます、何でだろう?

公式ドキュメント

jp.alibabacloud.com

利用可能な CIDR ブロック 192.168.0.0/16 、172.16.0.0/12 、10.0.0.0/8 、およびそれらのサブセット   サブセットの指定ができるように書いてあります。

CLIVPC作成

コンソールは諦めて、CLIで試してみました。

CLIだと、サブセットの指定ができます。

~$ aliyun vpc CreateVpc --CidrBlock 10.0.0.0/16 --VpcName vpc-test
{"RequestId":"933195A7-9AAB-4C6C-BB98-748C73580F0D","ResourceGroupId":"rg-acfnwbkqz24vhca","RouteTableId":"vtb-6we5znt1i4g097wqpfwol","VpcId":"vpc-6werszk0wi0vi6lqyrj8z","VRouterId":"vrt-6werucrslele1xu2c4x10"}
~$ aliyun vpc CreateVpc --CidrBlock 10.0.1.0/24 --VpcName vpc-test2
{"RequestId":"A2CEB167-6696-4B25-B9B3-9958273719C7","ResourceGroupId":"rg-acfnwbkqz24vhca","RouteTableId":"vtb-6weva02h5wwl730pigxyz","VpcId":"vpc-6weyca56yw7hgrnit4hdl","VRouterId":"vrt-6weme3kha7k0s2yslhdyy"}

作成後はコンソールで確認できます。

f:id:n_watanabe:20181113220325p:plain
VPC一覧

Publicアドレスを指定する

~$ aliyun vpc CreateVpc --CidrBlock 1.1.0.0/16 --VpcName vpc-test3
ERROR: SDK.ServerError
ErrorCode: InvalidParameter
Recommend:
RequestId: 603C4383-CBD9-4A48-A57D-2AE58DA4FFA9
Message: Specified CIDR block is not valid

エラー出ました。ダメなようです。

f:id:n_watanabe:20181113220642p:plain

ただ、コンソール見ると、サポートセンターに聞けば何とかなるようです。

AWSの場合

Publicアドレスも指定できます。

~$ aws ec2 create-vpc --cidr-block 1.1.1.0/16
{
    "Vpc": {
        "CidrBlock": "1.1.0.0/16",
        "DhcpOptionsId": "dopt-3d98d759",
        "State": "pending",
        "VpcId": "vpc-01ed7f6bdcc762c59",
        "InstanceTenancy": "default",
        "Ipv6CidrBlockAssociationSet": [],
        "CidrBlockAssociationSet": [
            {
                "AssociationId": "vpc-cidr-assoc-03e8415f781aaa277",
                "CidrBlock": "1.1.0.0/16",
                "CidrBlockState": {
                    "State": "associated"
                }
            }
        ],
        "IsDefault": false,
        "Tags": []
    }
}