AzureにVyOSの仮想マシンを構築する2/4

AzureにVyOSをデプロイするには、ローカル環境のHyper-V上にVyOSを構築し、作成されたディスクAzureにアップロードし、ディスクから仮想マシンを作成する手順となります。
(1)Hyper-V用のVyOSイメージ(VHDXフォーマット)をダウンロードする。
(2)VyOSイメージ(VHDXフォーマット)からHyper-Vの仮想マシンの作成する。
(3)Azureで起動しSSH接続するための設定およびAzure Linux Agentの導入を行う。
(4)仮想マシンの仮想ハードディスクをVHDフォーマットで出力する。
(5)VHDファイルをマネージドディスクに直接アップロードする。
(6)マネージドディスクから仮想マシンをデプロイする。
(7)Azureに作成された仮想マシンを起動する。
※青字:今回の記載内容

SSHの設定

VyOSにSSHで接続することができるようにします。
(1)デフォルトのユーザ(vyos/vyos)でログインします。

(2)設定モードにする。
configure
(3)ネットワークインターフェース(eth0)をDHCPで構成します。
set interfaces ethernet eth0 address dhcp
(4)SSHを有効化します。
set service ssh
(5)設定を反映する。
commit
(6)変更内容を保存する。
save

(7)IPアドレスの確認
ip a

Azure Linux Agentのダウンロード

GITHUBから最新のリリースをダウンロードします。
https://github.com/Azure/WALinuxAgent/releases/latest
画面下方の「Source code(zip)」を選択してダウンロードします。

Azure Linux Agentのインストール

(1)sshクライアント(teratermなど)から接続します。
(2)ダウンロードしたファイル(WALinuxAgent-2.9.1.1.zip)をscpで転送します。
(3)ZIPファイルを展開します。
unzip WALinuxAgent-2.9.1.1.zip
(4)展開したディレクトリ配下のinstallスクリプトを実行します。
cd WALinuxAgent-2.9.1.1
sudo python setup.py install
(5)Azure Linux Agentの状態を確認します。
systemctl status waagent

vyos@vyos:~$ ls
WALinuxAgent-2.9.1.1.zip
vyos@vyos:~$ unzip WALinuxAgent-2.9.1.1.zip
Archive:  WALinuxAgent-2.9.1.1.zip
   creating: WALinuxAgent-2.9.1.1/
  inflating: WALinuxAgent-2.9.1.1/.gitattributes
   creating: WALinuxAgent-2.9.1.1/.github/
  ・・・
  inflating: WALinuxAgent-2.9.1.1/tests_e2e/tests/lib/shell.py
  inflating: WALinuxAgent-2.9.1.1/tests_e2e/tests/lib/ssh_client.py
  inflating: WALinuxAgent-2.9.1.1/tests_e2e/tests/lib/virtual_machine.py
  inflating: WALinuxAgent-2.9.1.1/tests_e2e/tests/lib/vm_extension.py
  inflating: WALinuxAgent-2.9.1.1/tests_e2e/tests/pass_test.py
vyos@vyos:~$ cd WALinuxAgent-2.9.1.1
vyos@vyos:~/WALinuxAgent-2.9.1.1$ ls
azurelinuxagent  init            MANIFEST          SECURITY.md
bin              LICENSE.txt     MANIFEST.in       setup.py
ci               __main__.py     NOTICE            test-requirements.txt
CODEOWNERS       MAINTENANCE.md  README.md         tests
config           makepkg.py      requirements.txt  tests_e2e
vyos@vyos:~/WALinuxAgent-2.9.1.1$ sudo python setup.py install
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
  ・・・
reading manifest file 'WALinuxAgent.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'WALinuxAgent.egg-info/SOURCES.txt'
Copying WALinuxAgent.egg-info to /usr/local/lib/python2.7/dist-packages/WALinuxAgent-2.9.1.1-py2.7.egg-info
running install_scripts
vyos@vyos:~/WALinuxAgent-2.9.1.1$ systemctl status waagent
● waagent.service - Azure Linux Agent
   Loaded: loaded (/lib/systemd/system/waagent.service; disabled)
   Active: inactive (dead)

後処理

Azureの仮想マシンではネットワークインタフェースのMACアドレスが変更されるため、構成ファイル(/config/config.boot)から削除しておく。
interfaces(eth0)のhw-idを削除する。
sudo vi /config/config.boot

編集後、システムを停止(poweroff)する。

コメント