티스토리 뷰

가상화/Cisco ACI

ACI Firmware Upgrade

청년정신 2019. 4. 1. 03:37
ACI Firmware 관리에 대한 요약

ACI Firmware 는 아래와 같이 크게 2종류로 나뉜다.
1.APIC 컨트롤러 Firmware - 컨트롤러의 펌웨어로 보통 약 4GB 내외의 크기로 되어 있다.
2.Switch Firmware - LEAF/SPINE 스위치의 펌웨어로 보통 약 1GB 내외의 크기로 되어 있다.

해당 Firmware를 업그레이드 하는 방법은 여러가지가 있지만, 권고사항은 APIC 컨트롤러를 통해 배포하는 것이다.
그림에서 보는 것 처럼 APIC 컨트롤러가 Firmware를 배포하는 Repository 가 된다.
먼저 클라이언트에서 해당 Firmware를 Controller의 Repository로 업로드하고, 
Controller는 해당 펌웨어의 무결성을 검증해서 Local Repo로 관리한다.
이후 APIC Cluster와 Switch에 배포 정책에 따라 배포해 주면 된다.
무결성 검증까지 모두 처리하기 때문에, 특별히 작업할 일은 없이 간단하게 처리할 수 있다.
업로드와 다운로드 모두의 처리과정은 암호화된 채널을 통해서 구성되기 때문에 보안을 보장할 수 있다.




ACI Firmware Upgrade 과정 소개 - Firmware Upload

먼저 “Admin”-“Firmware” 탭을 통해 현재 Firmware상태를 확인 할 수 있다.
이 메뉴에서 업그레이드와 Firmware 의 모든 관리가 이루어 진다.



Image 탭을 클릭하면 클라이언트에서 APIC으로 Firmware를 업로드 할 수 있다.
또한 이미 업로드된 Firmware를 확인 할 수 있다.



해당 이미지를 선택해서 적절히 업로드 한다.



업로드가 완료되면 아래와 같이 Firmware Repo에 추가되어 해당 버전이 나타난다.
실제 디스플레이되기까지는 약 5분 ~10분 정도의 시간이 소요되는데 이것은 무결성 검증과정과 Repo로 옮기는 과정에 걸리는 시간이니, 기다리면 된다.



APIC CLI를 통해서도 현재 Firmware Repo에 등록된 내용을 확인 할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
apic1# show firmware repository
 Name                                      Type        Version        Size(MB)
 ----------------------------------------  ----------  -------------  ----------
 aci-apic-dk9.3.0.2h.bin                   controller  3.0(2h)        3354.514
 aci-n9000-dk9.14.0.3d.bin                 switch      14.0(3d)       1430.619
 aci-apic-dk9.4.0.3d.bin                   controller  4.0(3d)        3958.838
 aci-catalog-dk9.70.3.7.bin                catalog     70.3(7)        0.080
 aci-catalog-dk9.70.3.3.bin                catalog     70.3(3)        0.077
 aci-catalog-dk9.3.0.2h.bin                catalog     3.0(2h)        0.049
 aci-n9000-dk9.13.0.2h.bin                 switch      13.0(2h)       1296.372
 aci-n9000-dk9.14.1.1i.bin                 switch      14.1(1i)       1646.995
 aci-catalog-dk9.70.4.2.bin                catalog     70.4(2)        0.085
 aci-apic-dk9.4.1.1i.bin                   controller  4.1(1i)        4043.877
cs



ACI Firmware Upgrade 과정 소개 - Firmware Upgrade

먼저 APIC Controller Firmware를 업그레이드 한다.
Infrastructure” 메뉴에서 “Controller”를 선택하고, Schedule Controller Upgrade를 실행한다.



모든 Firmware 업그레이드는 즉각 실행하는 방법과 스케쥴링을 통해 적용하는 방법이 있다.
이번 예에서는 즉시 업그레이드 하는 과정을 소개 한다.
Repo에 등록된 버전가운데, 업그레이드 또는 다운그레이드 할 버전을 선택하고, Upgrade Now를 실행한다.
또한 Ignore Compatibility Check를 선택한다. 물론 권고사항은 비활성화하고 진행하는 것이지만, 이것은 업그레이드 중에 스위치와 컨트롤러간에 호환성 점검을 하는 부분이기 때문에 실제 업그레이드에는 큰 문제가 되지는 않는다.



실행하게 되면 APIC Controller Cluster에 있는 APIC들이 업그레이드를 진행한다.
순차적으로 진행하며,어떠한 정책 설정을 하지 않더라도 APIC에서 스스로 판단해서 업그레이드를 진행한다.
순서는 APIC 1번 부터 순차적으로 업그레이드를 진행하고, 업그레이드 이후 리부팅과 정상적으로 Cluster에 Join된 이후에 다음 APIC을 업그레이드 하는 방식이다.



APIC Controller Firmware를 업그레이드 과정이 종료되면 Node , 즉 Switch 업그레이드 과정을 진행한다.
버전별로 구성방법이 약간 상이하긴 하지만, 크게 다르지 않으므로 아래 과정을 보면 이해가 될 것이다.
Infrastructure - Node 메뉴를 선택하고, Schedule Node Upgrade를 진행한다.



아래와 같이 상세 메뉴가 등장하는데, 이가운데 앞선 APIC Controller와 다른 것이 Node(Switch) Group 정책을 정의하는 것이다.
이것은 업그레이드에 대한 편의성을 제공하는 것으로 Node (Switch)를 여러개의 그룹으로 묶어서 일괄 업그레이드를 진행할 수 있도록 정책을 정의 할 수 있다.
매우 유용한 방식으로 업그레이드 및 부팅 절차까지 편리하게 정책을 배포하고 수행할 수 있다.

아래 예제에서는 Node(Switch)전체를 ODD,EVEN으로 나누어서 2번에 일괄 업그레이드 하는 방식을 택했다.
아래 그림 1에서 처럼 그룹 정책을 선언하고, 
2에서는 Node   버전을 선택한다.
4번이 매우 중요한데, Node(Switch) ID  번호를 여기에 기입해 주면 해당 스위치들은 이 그룹 정책에 포함된다.

이러한 방식은 업그레이드 이후에도, 만약 스위치가 장애를 일으켜서 스위치 교체를 하게 될때도, ACI Fabric에 연결될 때 이 정책을 수행하여 해당 신규 스위치들은 버전을 동일하게 자동으로 맞춰준다.
유지보수에 매우 뛰어난 구성 방식이다.




정책을을 완료하고 수행하면 아래와 같이 각 Node(Switch)들이 Node Upgrade Group에 속하게 되며, 업그레이드 과정을 볼 수 있다.



업그레이드 과정을 UI 뿐만 아니라 아래와 같이 CLI를 통해서도 확인 할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
apic1# show firmware upgrade status
 Pod         Node        Current-Firmware      Target-Firmware       Status                     Upgrade-Progress(%)
 ----------  ----------  --------------------  --------------------  -------------------------  --------------------
 1           1           apic-4.1(1i)          apic-4.1(1i)          success                    100
 1           2           unknown               unknown               node unreachable           -
 1           3           apic-4.0(3d)          apic-4.1(1i)          upgrade in progress        0
 2           4           apic-4.0(3d)          apic-4.1(1i)          upgrade in progress        0
 1           101         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           102         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           103         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           104         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           201         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           202         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 1           203         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           301         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           302         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           303         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           304         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           402         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
 2           403         n9000-14.0(3d)        n9000-14.1(1i)        waiting in queue           0
cs


업그레이드가 완료되면 아래와 같이 CLI 에서도 UI와 동일하게 Upgrade-Process가 100% 되어야 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
apic1# show firmware upgrade status
 Pod         Node        Current-Firmware      Target-Firmware       Status                     Upgrade-Progress(%)
 ----------  ----------  --------------------  --------------------  -------------------------  --------------------
 1           1           apic-4.1(1i)          apic-4.1(1i)          success                    100
 1           2           apic-4.1(1i)          apic-4.1(1i)          success                    100
 1           3           apic-4.1(1i)          apic-4.1(1i)          success                    100
 2           4           apic-4.1(1i)          apic-4.1(1i)          success                    100
 1           101         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           102         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           103         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           104         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           201         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           202         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 1           203         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           301         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           302         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           303         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           304         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           402         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
 2           403         n9000-14.1(1i)        n9000-14.1(1i)        success                    100
cs











'가상화 > Cisco ACI' 카테고리의 다른 글

ACI Fabric 소개  (0) 2019.02.27
ACI MultiPod 구성 가이드  (0) 2019.02.27
ACI Multicast Config Guide  (0) 2019.02.27
ACI DHCP Config Guide  (0) 2019.02.27
Microsegment-User EPG  (0) 2019.02.27
공지사항