이 문서에서는 VMware 파트너 게이트웨이를 3.3.2 또는 3.4 릴리스에서 4.0 릴리스로 업그레이드하는 방법에 대한 지침을 제공합니다.

SD-WAN Gateway 장치에는 4.0 릴리스의 다음과 같은 변경 사항이 포함되어 있습니다.

  • 볼륨 관리의 유연성을 높일 수 있도록 LVM을 기준으로 하는 새 시스템 디스크 레이아웃
  • 새 커널 버전
  • 새 및 업그레이드된 기본 OS 패키지
  • 인터넷 보안 센터 벤치마크에 따라 보안 강화 개선
SD-WAN Gateway 장치에는 4.0 릴리스의 다음과 같은 시스템 변경 사항이 포함되어 있습니다.
  • ifupdown은 https://netplan.io/에 따라 더 이상 사용되지 않습니다.
    • ifup 및 ifdown을 더 이상 사용할 수 없습니다.
    • 네트워크 구성이 이제 /etc/netplan 및 /etc/network/에 있습니다.
    • etc/network/ifup.d 및 /etc/network/ifdown.d가 더 이상 작동하지 않습니다. Network-dispatcher 위치 /usr/lib/networkd-dispatcher(dormant.d, no-carrier.d, off.d, routable.d)를 사용해야 합니다.
  • cloud-init의 주요 변경 사항. Cloud-init 배포 스크립트의 호환성을 검토하고 테스트해야 합니다.
  • net-tools(ifconfig, netstat 등)는 "사용되지 않음"으로 간주되며 향후 버전에서 제거될 수 있습니다.

네트워크 구성

ifupdown은 https://netplan.io/에 따라 더 이상 사용되지 않습니다. 네트워크 구성이 /etc/network에서 /etc/netplan으로 이동되었습니다.

네트워크 구성 예(공백 중요!) - /etc/netplan/50-cloud-init.yaml:
network: 
  version: 2 
  ethernets: 
    eth0:
      addresses: 
        - 192.168.151.253/24 
      gateway4: 192.168.151.1
      nameservers: 
        addresses:
          - 8.8.8.8 
          - 8.8.4.4 
        search: [] 
      routes: 
        - to: 192.168.0.0/16
          via: 192.168.151.254
          metric: 100

     eth1:
      addresses: 
        - 192.168.152.251/24 
      gateway4: 192.168.152.1
      nameservers: 
        addresses: 
          - 8.8.8.8 
        search: [] 
모든 부팅 시 네트워크 구성이 재생성됩니다. 위치 구성을 변경하려면 Cloud-init 네트워크 구성을 비활성화합니다.
echo 'network: {config: disabled}' > /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg

Cloud-init

Cloud-init가 버전 20.2로 업그레이드되었습니다. Cloud-init에 대한 자세한 내용은 https://cloudinit.readthedocs.io/en/stable/index.html에서 확인할 수 있습니다.

예 1: 간단한 구성

meta-data:

instance-id: vcg1

local-hostname: vcg1

user-data:
#cloud-config 
hostname: vcg1 
password: Velocloud123
chpasswd: {expire: False} 
ssh_pwauth: True

예 2: 새 스타일 네트워크 구성(network-config 파일)

meta-data:
instance-id: vcg1 
local-hostname: vcg1 
user-data:
#cloud-config
hostname: vcg1
password: Velocloud123
chpasswd: {expire: False}
ssh_pwauth: True
ssh_authorized_keys:
  - ssh-rsa  …  rsa-key

velocloud: 
  vcg: 
    vco: demo.velocloud.net 
    activation_code: F54F-GG4S-XGFI 
    vco_ignore_cert_errors: false 

runcmd:
  - 'echo “Welcome to VeloCloud”' 

network-config 예제 1:

version: 2
ethernets:
  eth0:
    addresses: 
      - 192.168.152.55/24
    gateway4: 192.168.152.1
    nameservers: 
      addresses:
        - 192.168.152.1 
  eth1:
    addresses:
      - 192.168.151.55/24
    gateway4: 192.168.151.1
    nameservers: 
      addresses:
        - 192.168.151.1 

network-config 예제 2:

참고: 게이트웨이에 여러 인터페이스가 있고 인터페이스를 기본 게이트웨이의 기본 인터페이스로 선택해야 하는 경우 아래 구성(메트릭 값 포함)을 사용하여 올바른 인터페이스를 선택할 수 있습니다.

version: 2
ethernets:
eth0:
  addresses: [192.168.82.1/24]
eth1:
  addresses: [70.150.1.1/24]
  routes:
  - {metric: 1, to: 0.0.0.0/0, via: 70.150.1.254}
eth2:
  addresses: [70.155.1.1/24]
  routes:
  - {metric: 2, to: 0.0.0.0/0, via: 70.155.1.254}

Net-tools

Net-tools 유틸리티(예: ifconfig, netstat, route 등)는 "사용되지 않음"으로 간주됩니다. Net-tools에서 제안되는 교체 항목은 아래 표에 표시되어 있습니다. 이러한 명령은 SD-WAN 오버레이 네트워크가 아닌 Linux 호스트에 대한 정보만 표시합니다. 참고: 자세한 내용을 보려면 man ip를 입력하십시오.

이전 Net-tool 유틸리티 새 해당 Net-tool 유틸리티
arp ip n (ip neighbor)
ifconfig ip a (ip addr), ip link, ip -s (ip -stats)
nameif ip link, ifrename
netstat ss, ip route (for netstat-r), ip -s link (for netstat -i), ip maddr (for netstat-g)
route ip r (ip route)

Net-tool 유틸리티에 대한 샘플 명령 출력

샘플 출력은 명령이 성공했다는 확인입니다. ip n (ip neighbor), ip a (ipaddr) 및 ip link에 대한 샘플 명령 출력은 아래에 표시됩니다.

ip n (ip neighbor):
root@SS-gateway-1:~# ip n 
192.168.0.100 dev eth2 lladdr 00:50:56:84:85:d4 REACHABLE 
192.168.0.250 dev eth2 lladdr 00:50:56:84:97:66 REACHABLE 
13.1.1.2 dev eth0 lladdr 00:50:56:84:e7:fa REACHABLE 
root@SS-gateway-1:~# 
ip a (ipaddr):
root@SS-gateway-1:~# ip a 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
    inet 127.0.0.1/8 scope host lo 
       valid_lft forever preferred_lft forever 
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever 
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 4096 
    link/ether 00:50:56:84:a0:09 brd ff:ff:ff:ff:ff:ff 
    inet 13.1.1.1/24 brd 13.1.1.255 scope global eth0 
       valid_lft forever preferred_lft forever 
    inet6 fe80::250:56ff:fe84:a009/64 scope link 
       valid_lft forever preferred_lft forever 
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 
    link/ether 00:50:56:84:a6:ab brd ff:ff:ff:ff:ff:ff 
    inet 101.101.101.1/24 brd 101.101.101.255 scope global eth1 
       valid_lft forever preferred_lft forever 
    inet6 fe80::250:56ff:fe84:a6ab/64 scope link 
       valid_lft forever preferred_lft forever 
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 
    link/ether 00:50:56:84:bc:75 brd ff:ff:ff:ff:ff:ff 
    inet 192.168.0.201/24 brd 192.168.0.255 scope global eth2 
       valid_lft forever preferred_lft forever 
    inet6 fe80::250:56ff:fe84:bc75/64 scope link 
       valid_lft forever preferred_lft forever 
6: gwd1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 4096 
    link/none 
    inet 169.254.129.1/32 scope global gwd1 
       valid_lft forever preferred_lft forever 
    inet6 fe80::27d5:9e46:e7f7:7198/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever 
root@SS-gateway-1:~# 
ip link
root@SS-gateway-1:~# ip link 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 4096 
    link/ether 00:50:56:84:a0:09 brd ff:ff:ff:ff:ff:ff 
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 
    link/ether 00:50:56:84:a6:ab brd ff:ff:ff:ff:ff:ff 
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 
    link/ether 00:50:56:84:bc:75 brd ff:ff:ff:ff:ff:ff 
6: gwd1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 4096 
    link/none 
root@SS-gateway-1:~# 

업그레이드 고려 사항

참고: 아래 단계는 4.0 릴리스에 배포된 새 SD-WAN Gateway에 대해 동일한 IP 주소와 SD-WAN Gateway 이름을 보존하려고 한다는 가정을 기준으로 합니다. 그러나 다른 IP 주소를 사용하여 새 SD-WAN Gateway를 생성하려는 경우 새 SD-WAN Gateway 절차를 따를 수 있습니다.

디스크 레이아웃 및 시스템 파일이 대폭 변경되었기 때문에, 이전 릴리스에서 4.0 릴리스로 인플레이스 업그레이드를 수행할 수 없습니다. 마이그레이션을 수행하려면 새 4.0 SD-WAN Gateway 시스템을 배포하고 이전 코드를 실행하는 시스템을 서비스 해제해야 합니다.

잘 알려진 공용 IP 주소를 사용하는 VPN SD-WAN Gateways 또는 NAT SD-WAN Gateways의 경우 SD-WAN Gateway의 공용 IP를 유지해야 하는 경우 아래의 절차를 따르십시오.

절차: (잘 알려진 공용 IP 주소가 있는 VNP 또는 NAT SD-WAN Gateways )
  1. 4.0 릴리스 이미지를 기준으로 새 SD-WAN Gateway 시스템을 시작합니다. 자세한 내용은 플랫폼에 대한 배포 가이드(게이트웨이 설치 절차)를 참조하십시오.
  2. 이전 SD-WAN Gateway 시스템을 종료합니다. (CLI 콘솔에서 “sudo poweroff” 명령을 실행하거나 사용 가능한 하이퍼바이저 옵션에서 전원을 끄는 방법으로, 이전 SD-WAN Gateway VM을 종료합니다.)
  3. 공용 IP를 새 시스템으로 마이그레이션: 새 SD-WAN Gateway 시스템을 가리키도록 NAT 레코드를 업데이트하거나 새 SD-WAN Gateway 네트워크 인터페이스에서 공용 IP를 구성합니다. 이전 SD-WAN Gateway와 동일한 IP 주소를 사용하여 위에 지정된 Cloud-int 예제를 사용하여 새 게이트웨이를 배포합니다.
  4. 아래 단계에 설명된 대로 SD-WAN Orchestrator의 기존 SD-WAN Gateway 레코드에서 활성화 키를 가져옵니다.
    1. SD-WAN Orchestrator에서 왼쪽 탐색 패널에서 게이트웨이(Gateways)를 선택합니다.
    2. 게이트웨이(Gateways) 화면에서 SD-WAN Gateway를 클릭하여 선택합니다.
    3. 선택한 SD-WAN Gateway 화면에서 SD-WAN Gateway 이름 옆에 있는 아래쪽 화살표를 클릭하여 정보 상자를 엽니다.
    4. 활성화 키는 아래 이미지에 표시된 정보 상자 맨 아래에 있습니다.

  5. 아래 이미지에 표시된 것처럼 다음 시스템 속성 “gateway.activation.validate.deviceId”를 False로 설정합니다. 자세한 내용을 보려면 VMware SD-WAN 운영자 가이드의 "시스템 속성" 섹션을 참조하십시오.

  6. SD-WAN Gateway 시스템 다시 활성화: CLI 콘솔에서 “sudo /opt/vc/bin/activate.py -s <vco_address> <activation_code>” 를 실행합니다.
  7. 필요한 경우 다음 시스템 속성 "gateway.activation.validate.deviceId"를 원래 값으로 복원합니다.

    이제 SD-WAN Gateway가 등록되었으며 Edge에서 연결을 수신할 준비가 되었습니다.

참고: 이 문서의 사용자 데이터 섹션에 설명된 대로 Cloud-int를 통해 SD-WAN Gateway 재활성화를 수행할 수 있습니다.

활성화 예제 출력(Activation Example Output)

root@gateway/opt/vc# /opt/vc/bin/activate.py FLM6-CSV6-REJS-XFR5 -i -s 169.254.8.2

Activation successful, VCO overridden back to 169.254.8.2 root@SS1-gateway-2:/opt/vc#

잘 알려진 공용 IP가 없는 SD-WAN Gateways

이 섹션은 VPN SD-WAN Gateways와 같이 잘 알려진 공용 IP가 없는 SD-WAN Gateways에만 해당됩니다. 이 시나리오가 적용되는 경우 아래 절차를 따르십시오.

절차: (잘 알려진 공용 IP가 없는 SD-WAN Gateways )
  1. SD-WAN Gateway 시스템을 시작합니다. 필요한 경우 플랫폼에 대한 배포 가이드(게이트웨이 설치 절차)를 참조하십시오.
  2. SD-WAN Gateway 시스템을 활성화합니다.
  3. SD-WAN GatewaySD-WAN Orchestrator SD-WAN Gateway 풀로 추가합니다. 자세한 내용은 VMware SD-WAN 운영자 가이드의 "게이트웨이 관리" 섹션을 참조하십시오.
    1. 이제 SD-WAN Gateway가 등록되었으며 Edge에서 연결을 수신할 준비가 되었습니다.
  4. SD-WAN Orchestrator SD-WAN Gateway 풀에서 이전 SD-WAN Gateway를 제거합니다. 자세한 내용은 VMware SD-WAN 운영자 가이드의 "게이트웨이 관리" 섹션을 참조하십시오.
  5. 이전 SD-WAN Gateway VM을 서비스 해제합니다. (SD-WAN Orchestrator에서 SD-WAN Gateway 레코드를 제거하고 VM 인스턴스를 서비스 해제합니다.)

API를 통해 게이트웨이 활성화 키 가져오기

API 메서드를 사용하여 배포하려면 “network/getNetworkGateways”를 사용합니다.

샘플 응답(Sample response):

{"jsonrpc":"2.0","result":[{"id":1, "activationKey":"69PX-YHY2-N5PZ-G3UW …