1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Azure Linux仮想マシンのNIC二重化(Azure CLI編)

Last updated at Posted at 2017-02-09

前書き

2017/2/9現在、Azureの仮想マシンにNICを複数枚セットしようとすると、ポータル画面(ブラウザ)からは設定できず、PowerShellやAzureCLIなどを利用して仮想マシンを作成する必要があります。:disappointed_relieved:
今回は、Azure CLIを利用したNIC2枚刺しの仮想マシン作成を行います。

前提条件

・現在の最新イメージとなるCentOS7.3をインストールします。
・Azure CLIを利用できる環境が準備されていることを前提とします。
・ロケーションは、”japaneast”(東日本)とします。
・仮想マシン作成後のSSHログインは、パスワードによる認証方式で作成しています。
・IPアドレスは、パブリックIPアドレスも使用して固定化します。

準備

1.PowerShell、もしくはコマンドプロンプトを開いて、Azureにログインしましょう。
(管理者権限で実行してください)
# azure login -u <アカウント名>
パスワードを入力してログインしてください。

2.サブスクリプションをセットします。サブスクリプションが複数ある場合には、既定のサブスクリプションを確認してください。

<確認> # azure account list  ★ Current 列がtrue になっているものが選択されたサブスクリプションになります。
<設定> # azure account set <サブスクリプション名>

いざ!仮想マシン作成

3.リソースグループを作成します。(ポータルから作成してもOKです)

# azure group create <リソースグループ名> --location "<場所>"
sample)azure group create test_group --location "japaneast"

4.ストレージアカウントを作成します。仮想ディスクを保持します。

# azure storage account create <ストレージアカウント名> --resource-group <リソースグループ名> --location "<場所>" --kind Storage --sku-name PLRS`

<>に囲まれた部分以外は、決め打ちで問題ないです。
ストレージアカウント名は、英数字のみです。(記号はOUT)

sample) # azure storage account create storageadmin --resource-group test_group --location "japaneast" --kind Storage --sku-name PLRS

5.仮想ネットワークを作成します。

# azure network vnet create -g <リソースグループ名> -l <場所> -n <仮想ネットワーク名> -d -a <ネットワークアドレス/マスク>
sample) # azure network vnet create -g test_group -l japaneast -n test_vnet -d -a 10.1.0.0/16

:dizzy_face:なぜか、ロケーションは””で囲まれなくなりました。-l 恐るべし:dizzy_face:
-d の後ろは、既定値を利用するため、何も指定する必要ありません。
-d をつけないと「Cannot read property 'dnsSErvers' of undefined」となり、エラーになります。

6.サブネットを2つ用意します。

# azure network vnet subnet create -g <リソースグループ名> -e <仮想ネットワーク名> -n <サブネット名> -a <ネットワークアドレス/マスク>

sample) # azure network vnet subnet create -g test_group -e test_vnet -n front_subnw -a 10.1.1.0/24
sample) # azure network vnet subnet create -g test_group -e test_vnet -n back_subnw -a 10.1.2.0/24

7.仮想NICを作成して、6.で作成したサブネットにアタッチします。

# azure network nic create -g <リソースグループ名> -l <場所> -n <仮想NIC名> -m <仮想ネットワーク名> -k <サブネット名>

sample) `# azure network nic create -g test_group -l japaneast -n testNIC1 -m test_vnet -k front_subnw`
sample) `# azure network nic create -g test_group -l japaneast -n testNIC2 -m test_vnet -k back_subnw`

8.パブリックIPアドレスを予約します。

# azure network public-ip create -g <リソースグループ名> -n <予約IPアドレス名> -l <場所>

sample) # azure network public-ip create -g test_group -n nicw_ip -l japaneast

9.仮想マシンの作成

# azure vm create --resource-group <リソースグループ名> --name <仮想マシン名> --location <場所> --os-type <OSタイプ> --nic-names <1つ目の仮想NIC名>,<2つ目の仮想NIC名> --public-ip-name <パブリックIP名> --vm-size <マシンタイプ> --storage-account-name <ストレージアカウント名> --image-urn <イメージURL> --admin-username <OS管理者名>

※ 管理者パスワードの入力を2回求められます。
※ パスワードルールを守らないと次のエラーメッセージでエラーとなります。

error:   Parameter adminPassword must be at least 8 character in length, it must contain a lower case, an upper case, a number and a special character such as !@#$%^&+=

※ 仮想マシン名は、文字数字のみで、記号はOUTです。エラーになります。

****** is not a valid storage account name. Storage account name must be between 3 and 24 characters in length and use numbers and lower-case letters only.
sample) # azure vm create --resource-group test_group --name testvm --location japaneast --os-type linux --nic-names testNIC1,testNIC2 --public-ip-name nicw_ip --vm-size Standard_DS2_v2 --storage-account-name storageadmin --image-urn openlogic:CentOS:7.3:7.3.20161221 --admin-username testadmin

※ --image-urn は、# azure vm image list にて確認できます。

あとがき

変数化しないと大変ですね。
PowerShellの方がいいかもしれません。
次回、PowerShell版作成します。

参考URL

1
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?