SONiC에서 cRPD 설치 및 구성
이 섹션에서는 cRPD 주니퍼 네트웍스 QFX5210 및 QFX5200 스위치에서 SONiC(Software for Open Networking in the Cloud) 네트워크 운영 체제에서 실행되는 라우팅 스택으로 로드하고 구성하는 방법에 대해 설명합니다.
QFX5210 및 QFX5200 스위치에 SONiC을 설치하려면 주니퍼 네트웍스 QFX5210 및 QFX5200 스위치에서 SONiC 설치 및 업그레이드를 참조하십시오.
SONiC에서 cRPD 로드 및 시작 방법
SONiC에서 cRPD 패키지를 로드하려면 다음이 필요합니다.
-
https://support.juniper.net/support/downloads/ Juniper 소프트웨어 다운로드 페이지에서 cRPD 패키지를 다운로드하십시오. 예를 들어 cRPD 패키지 파일 이름은 junos-routing-crpd-docker-20.3R1.8.tgz입니다.
cRPD 패키지를 scp 또는 sftp 파일 전송 프로토콜을 사용하여 QFX5210 또는 QFX5200 스위치로 전송합니다.
다음 섹션에서는 QFX5210 또는 QFX5200 스위치용 SONiC에서 cRPD 로드하고 시작하는 방법을 설명합니다.
cRPD 이미지를 Docker에 로드
cRPD 이미지를 docker에 로드하려면 아래 그림과 같이 명령을 사용합니다 docker load -i junos-routing-crpd-docker-20.3R1.8.tgz
.
user@host:~$ docker load -i junos-routing-crpd-docker-20.3R1.8.tgz b187ff70b2e4: Loading layer [==================================================>] 65.58MB/65.58MB 5930c9e5703f: Loading layer [==================================================>] 991.7kB/991.7kB c64c52ea2c16: Loading layer [==================================================>] 15.87kB/15.87kB ddc500d84994: Loading layer [==================================================>] 3.072kB/3.072kB f76668b91ed5: Loading layer [==================================================>] 40.84MB/40.84MB cefbbbf6a84d: Loading layer [==================================================>] 7.68kB/7.68kB 19ed2664dd77: Loading layer [==================================================>] 134.5MB/134.5MB 2f362bdab81b: Loading layer [==================================================>] 13.82kB/13.82kB 0d625ccfa452: Loading layer [==================================================>] 3.072kB/3.072kB 75f1d83621fc: Loading layer [==================================================>] 3.584kB/3.584kB bba7d2bacea8: Loading layer [==================================================>] 3.584kB/3.584kB 911181312301: Loading layer [==================================================>] 3.584kB/3.584kB 98175a8ad5cb: Loading layer [==================================================>] 3.584kB/3.584kB a113daea3487: Loading layer [==================================================>] 3.584kB/3.584kB b224ed0cc92d: Loading layer [==================================================>] 3.584kB/3.584kB 48db2eb5713d: Loading layer [==================================================>] 3.584kB/3.584kB 1f620dc1de46: Loading layer [==================================================>] 2.56kB/2.56kB b9722b673d30: Loading layer [==================================================>] 30.72kB/30.72kB cc8250623a79: Loading layer [==================================================>] 6.656kB/6.656kB 5d3819eaf658: Loading layer [==================================================>] 3.584kB/3.584kB e7ffff983953: Loading layer [==================================================>] 4.096kB/4.096kB 4054102bacd4: Loading layer [==================================================>] 4.096kB/4.096kB 9479c967844e: Loading layer [==================================================>] 4.096kB/4.096kB 91a4575e8d76: Loading layer [==================================================>] 4.096kB/4.096kB d0aba2dd0145: Loading layer [==================================================>] 4.096kB/4.096kB 25bb582cc7dc: Loading layer [==================================================>] 22.53kB/22.53kB Loaded image: crpd:20.3R1.8 user@host:~$
cRPD 이미지가 제대로 로드되었는지 확인
cRPD 이미지가 제대로 로드되었는지 확인하려면 아래와 같이 명령을 사용합니다 docker images
.
user@host:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE crpd 21.2R1.10 f9b634369718 Less than a second ago 374MB docker-fpm-frr HEAD.0-dirty-20201027.160709 94d35b3d6ff8 Less than a second ago 335MB docker-fpm-frr latest 94d35b3d6ff8 Less than a second ago 335MB docker-syncd-brcm HEAD.0-dirty-20201027.160709 ef2f75e9156b Less than a second ago 436MB docker-syncd-brcm latest ef2f75e9156b Less than a second ago 436MB docker-router-advertiser HEAD.0-dirty-20201027.160709 d32efd117a97 Less than a second ago 289MB docker-router-advertiser latest d32efd117a97 Less than a second ago 289MB docker-sonic-mgmt-framework HEAD.0-dirty-20201027.160709 b6ebafc68f18 Less than a second ago 431MB docker-sonic-mgmt-framework latest b6ebafc68f18 Less than a second ago 431MB docker-platform-monitor HEAD.0-dirty-20201027.160709 ce3c952de93d Less than a second ago 357MB docker-platform-monitor latest ce3c952de93d Less than a second ago 357MB docker-sflow HEAD.0-dirty-20201027.160709 05278fdd0019 Less than a second ago 315MB docker-sflow latest 05278fdd0019 Less than a second ago 315MB docker-lldp-sv2 HEAD.0-dirty-20201027.160709 7f54d84f2da7 Less than a second ago 312MB docker-lldp-sv2 latest 7f54d84f2da7 Less than a second ago 312MB docker-dhcp-relay HEAD.0-dirty-20201027.160709 f86f0bce3b09 Less than a second ago 299MB docker-dhcp-relay latest f86f0bce3b09 Less than a second ago 299MB docker-database HEAD.0-dirty-20201027.160709 6daa6a1df857 Less than a second ago 289MB docker-database latest 6daa6a1df857 Less than a second ago 289MB docker-teamd HEAD.0-dirty-20201027.160709 7596d1a2c302 Less than a second ago 315MB docker-teamd latest 7596d1a2c302 Less than a second ago 315MB docker-snmp-sv2 HEAD.0-dirty-20201027.160709 c258dfe91775 Less than a second ago 348MB docker-snmp-sv2 latest c258dfe91775 Less than a second ago 348MB docker-orchagent HEAD.0-dirty-20201027.160709 3d602bee0ecb Less than a second ago 333MB docker-orchagent latest 3d602bee0ecb Less than a second ago 333MB docker-nat HEAD.0-dirty-20201027.160709 0e29ba4560e9 Less than a second ago 316MB docker-nat latest 0e29ba4560e9 Less than a second ago 316MB docker-sonic-telemetry HEAD.0-dirty-20201027.160709 521590e31e7d Less than a second ago 353MB docker-sonic-telemetry latest 521590e31e7d Less than a second ago 353MB user@host:~$
cRPD 컨테이너 생성 및 시작
이 섹션에서는 cRPD 컨테이너를 생성, 시작 및 액세스하는 방법을 설명합니다.
cRPD 컨테이너를 생성하려면 아래와 같이 명령을 사용합니다 docker create --name crpd -h crpd --net=host --privileged -it crpd:20.3R1.8 b7444647abb7977e0b7eaa884ace8b47bab3632ff2f3f67091d9734a58fa686b
.
user@host:~$ docker create --name crpd -h crpd --net=host --privileged -it crpd:20.3R1.8 b7444647abb7977e0b7eaa884ace8b47bab3632ff2f3f67091d9734a58fa686b user@host:~$
아래와 같이 명령을 실행하여 BGP 컨테이너에서 중지 zebra
및 bgpd
디먼을 docker exec bgp supervisorctl stop zebra bgpd
수행해야 합니다.
user@host:~$ docker exec bgp supervisorctl stop zebra bgpd zebra: stopped bgpd: stopped user@host:~$
cRPD 컨테이너를 시작하려면 아래와 같이 명령을 사용합니다 docker start crpd
.
user@host:~$ docker start crpd crpd user@host:~$
cRPD 컨테이너에 액세스하려면 아래와 같이 명령을 사용 docker exec -it crpd
하십시오.
user@host:~$ docker exec -it crpd cli root@crpd>
fpmsyncd에 RPD 연결 활성화
fpmsyncd에 RPD 연결을 활성화하려면 아래와 같이 구성 모드를 입력하고 [edit routing-options forwarding-table
] 계층 수준에서 을(를) 활성화 fib-agent
해야 합니다.
root@crpd> configure Entering configuration mode [edit] root@crpd# set routing-options forwarding-table fib-agent [edit] root@crpd# commit and-quit commit complete Exiting configuration mode root@crpd>
cRPD 실행되면 cRPD CLI에서 BGP를 구성할 수 있습니다. 다음은 샘플 BGP 구성입니다.
user@host:~$ docker exec -it crpd cli root@crpd> configure Entering configuration mode root@crpd# show protocols bgp { group EBGPv4 { type external; neighbor 192.168.1.2 { description <neighbor_description>; local-address 192.168.1.4; peer-as 65000; } } }