OSSのネットワークアプライアンスである「VyOS」は、バージョン1.3以降は、Rolling releaseによる提供となっており、最新のコードでビルドされたISOイメージが毎日作成され、ダウンロードすることができる。
VyOSは、リリースされたISOイメージを用いて簡単にバージョンアップすることができる。インターネットへの接続可否によって、手順は2パターンに分けることができる。
- インターネットに接続できる場合は、直接ISOイメージのURLを指定してバージョンアップ
- インターネットに接続できない場合は、ISOイメージをVyOSにアップロードしてバージョンアップ
上記2パターンのVyOSのバージョンアップ手順を以下に記載する。
環境
- VyOS (バージョンアップ前) : 1.3-rolling-202005031216
- VyOS (バージョンアップ後) : 1.3-rolling-202012311144
① 直接ISOイメージのURLを指定してバージョンアップ
1. VyOSのISOイメージのURLを確認
VyOSのISOイメージは、以下URLからダウンロードできる。
最新のISOイメージは、vyos-rolling-latest.iso
となる。日付を指定したい場合は、vyos-1.3-rolling-YYYYMMDDhhmm-amd64.iso
というファイル名となっているので、任意の日付のファイルのURLを確認しておく。
# 最新版URL
https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso
# 日付指定した場合のURL
https://downloads.vyos.io/rolling/current/amd64/vyos-1.3-rolling-202012311144-amd64.iso
2. バージョンアップ前確認
バージョンアップ前に、現在のVyOSのバージョンを確認しておく。
$ show version
Version: VyOS 1.3-rolling-202005031216
Release Train: equuleus
~(以下略)~
バージョンアップ作業では再起動が必須となるため、VyOSをVRRPで冗長化している場合は、必ずBACKUPとなっていることを確認してから作業を進めること。もし、MASTERになっている場合は、Priorityを一時的に小さく設定してBACKUPに変更したのち作業を実施する。
$ show vrrp
Name Interface VRID State Last Transition
-------- ----------- ------ ------- -----------------
vrrpgrp1 eth0 10 MASTER 5d23h20m3s
vrrpgrp2 eth1 10 MASTER 5d23h20m3s
# configure
# set high-availability vrrp group vrrpgrp1 priority 90
# set high-availability vrrp group vrrpgrp2 priority 90
# commit
# save
# exit
$ show vrrp
Name Interface VRID State Last Transition
-------- ----------- ------ ------- -----------------
vrrpgrp1 eth0 10 BACKUP 13s
vrrpgrp2 eth1 10 BACKUP 13s
バージョンアップ前後での設定値比較のため、設定コマンドリストをバックアップしておく。
$ set terminal length 0
$ show configuration commands
以上でバージョンアップ前の準備は整った。
3. バージョンアップ
バージョンアップ前に保持しているイメージを確認する。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202005031216 (default boot)
先ほど確認したISOイメージのURLを指定して、VyOSのイメージを追加する。対話式でいくつか確認事項が表示される (★箇所) が、すべてデフォルトで問題ないため空白のままエンターを押して進める。
$ add system image https://downloads.vyos.io/rolling/current/amd64/vyos-1.3-rolling-202012311144-amd64.iso
Trying to fetch ISO file from https://downloads.vyos.io/rolling/current/amd64/vyos-1.3-rolling-202012311144-amd64.iso
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 350M 100 350M 0 0 1742k 0 0:03:25 0:03:25 --:--:-- 2041k
ISO download succeeded.
Checking for digital signature file...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
Unable to fetch digital signature file.
Do you want to continue without signature check? (yes/no) [yes] ★空白のままエンター
Checking MD5 checksums of files on the ISO image...OK.
Done!
What would you like to name this image? [1.3-rolling-202012311144]: ★空白のままエンター
OK. This image will be named: 1.3-rolling-202012311144
Installing "1.3-rolling-202012311144" image.
Copying new release files...
Would you like to save the current configuration
directory and config file? (Yes/No) [Yes]: ★空白のままエンター
Copying current configuration...
Would you like to save the SSH host keys from your
current configuration? (Yes/No) [Yes]: ★空白のままエンター
Copying SSH keys...
Running post-install script...
Setting up grub configuration...
Done.
再度、保持しているイメージを確認する。新しいバージョンのイメージが追加され、かつdefault boot
と記載がされていれば問題ない。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202012311144 (default boot)
2: 1.3-rolling-202005031216
4. 再起動
新しいバージョンのイメージにてVyOSを起動させるため、再起動を行う。
$ reboot
Are you sure you want to reboot this system? [y/N] y ★yを入力
5. バージョンアップ後確認
再起動後に、VyOSのバージョンを確認する。特に問題なければ、新しいバージョンで表示がされるはずだ。
$ show version
Version: VyOS 1.3-rolling-202012311144
Release Train: equuleus
~(以下略)~
バージョンアップ後の設定コマンドリストを取得し、Diffツールを用いて設定に差異がないことを確認する。
$ set terminal length 0
$ show configuration commands
6. 不要なISOイメージを削除
最後に登録されているVyOSの旧イメージを削除する。
$ delete system image 1.3-rolling-202005031216
Are you sure you want to delete the
"1.3-rolling-202005031216" image? (Yes/No) [No]: yes ★yesを入力
Deleting the "1.3-rolling-202005031216" image...
Done
削除後に、VyOSのイメージが最新バージョンのみになっていることを確認する。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202012311144 (default boot) (running image)
以上で、インターネットを経由した場合のVyOSのバージョンアップ作業は完了となる。
② ISOイメージをVyOSにアップロードしてバージョンアップ
1. VyOSのISOイメージをダウンロード
VyOSのISOイメージは、以下URLからダウンロードできる。最新のISOイメージは、vyos-rolling-latest.iso
となる。日付を指定したい場合は、vyos-1.3-rolling-YYYYMMDDhhmm-amd64.iso
というファイル名となっているので、任意の日付のファイルをダウンロードする。
2. VyOSの/tmp
にISOイメージをアップロード
ダウンロードしたISOイメージをISOイメージのままVyOSにアップロードする。VyOSはSSHで接続できるので、SFTPを使ってアップロードする。
今回はTera Termの「ファイル」→「SSH SCP…」を使って、/tmp
にISOイメージをアップロードした。
アップロード後、ISOイメージが存在することを確認しておく。
$ ls -l /tmp
total 358416
-rw-r--r-- 1 root vyattacfg 10930 Dec 6 12:58 config.boot.3358
drwx------ 3 root root 60 Dec 6 12:58 systemd-private-335a704032554d4fb9138006c2c091b6-haveged.service-h3EkPg
drwx------ 3 root root 60 Dec 6 12:58 systemd-private-335a704032554d4fb9138006c2c091b6-ntp.service-RXj5lG
drwx------ 2 root root 40 Dec 6 12:58 vmware-root_828-2990678620
-rw-r--r-- 1 vyos users 367001600 Jan 1 10:52 vyos-1.3-rolling-202012311144-amd64.iso ★
-rw-rw-r-- 1 root vyattacfg 2 Dec 6 12:58 vyos-config-status
3. バージョンアップ前確認
バージョンアップ前に、現在のVyOSのバージョンを確認しておく。
$ show version
Version: VyOS 1.3-rolling-202005031216
Release Train: equuleus
~(以下略)~
バージョンアップ作業では再起動が必須となるため、VyOSをVRRPで冗長化している場合は、必ずBACKUPとなっていることを確認してから作業を進めること。もし、MASTERになっている場合は、Priorityを一時的に小さく設定してBACKUPに変更したのち作業を実施する。
$ show vrrp
Name Interface VRID State Last Transition
-------- ----------- ------ ------- -----------------
vrrpgrp1 eth0 10 MASTER 5d23h20m3s
vrrpgrp2 eth1 10 MASTER 5d23h20m3s
# configure
# set high-availability vrrp group vrrpgrp1 priority 90
# set high-availability vrrp group vrrpgrp2 priority 90
# commit
# save
# exit
$ show vrrp
Name Interface VRID State Last Transition
-------- ----------- ------ ------- -----------------
vrrpgrp1 eth0 10 BACKUP 13s
vrrpgrp2 eth1 10 BACKUP 13s
バージョンアップ前後での設定値比較のため、設定コマンドリストをバックアップしておく。
$ set terminal length 0
$ show configuration commands
以上でバージョンアップ前の準備は整った。
4. バージョンアップ
バージョンアップ前に保持しているイメージを確認する。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202005031216 (default boot)
先ほどアップロードしたISOイメージのフルパスを指定して、VyOSのイメージを追加する。対話式でいくつか確認事項が表示される (★箇所) が、すべてデフォルトで問題ないため空白のままエンターを押して進める。
$ add system image /tmp/vyos-1.3-rolling-202012311144-amd64.iso
Checking MD5 checksums of files on the ISO image...OK.
Done!
What would you like to name this image? [1.3-rolling-202012311144]: ★空白のままエンター
OK. This image will be named: 1.3-rolling-202012311144
Installing "1.3-rolling-202012311144" image.
Copying new release files...
Would you like to save the current configuration
directory and config file? (Yes/No) [Yes]: ★空白のままエンター
Copying current configuration...
Would you like to save the SSH host keys from your
current configuration? (Yes/No) [Yes]: ★空白のままエンター
Copying SSH keys...
Running post-install script...
Setting up grub configuration...
Done.
再度、保持しているイメージを確認する。新しいバージョンのイメージが追加され、かつdefault boot
と記載がされていれば問題ない。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202012311144 (default boot)
2: 1.3-rolling-202005031216
5. 再起動
新しいバージョンのイメージにてVyOSを起動させるため、再起動を行う。
$ reboot
Are you sure you want to reboot this system? [y/N] y ★yを入力
6. バージョンアップ後確認
再起動後に、VyOSのバージョンを確認する。特に問題なければ、新しいバージョンで表示がされるはずだ。
$ show version
Version: VyOS 1.3-rolling-202012311144
Release Train: equuleus
~(以下略)~
バージョンアップ後の設定コマンドリストを取得し、Diffツールを用いて設定に差異がないことを確認する。
$ set terminal length 0
$ show configuration commands
7. 不要なISOイメージを削除
最後にファイルのクリーニングを行う。先ほど/tmp
にアップロードしてISOイメージを削除する。
$ rm /tmp/vyos-1.3-rolling-202012311144-amd64.iso
$ ls -l /tmp
total 4
drwx------ 3 root root 60 Jan 1 16:17 systemd-private-cfd87e485d334522829573e58529d7e4-haveged.service-HzBlOU
drwx------ 3 root root 60 Jan 1 16:17 systemd-private-cfd87e485d334522829573e58529d7e4-ntp.service-ZdcxTv
drwx------ 2 root root 40 Jan 1 16:17 vmware-root_770-2990678653
-rw-rw-r-- 1 root vyattacfg 2 Jan 1 16:17 vyos-config-status
登録されているVyOSの旧イメージを削除する。
$ delete system image 1.3-rolling-202005031216
Are you sure you want to delete the
"1.3-rolling-202005031216" image? (Yes/No) [No]: yes ★yesを入力
Deleting the "1.3-rolling-202005031216" image...
Done
削除後に、VyOSのイメージが最新バージョンのみになっていることを確認する。
$ show system image
The system currently has the following image(s) installed:
1: 1.3-rolling-202012311144 (default boot) (running image)
以上で、インターネットを経由しない場合のVyOSのバージョンアップ作業は完了となる。
0 件のコメント:
コメントを投稿