이번 포스팅은 ACI Bug Report 관련 내용입니다.

 

지난 포스팅(http://zigispace.net/957) 에 이어서, ACI OS Upgrade 중에 발생할 수 있는 Bug Report(CSCvb94260)입니다.

2.1미만의 버전에서 발생할 수 있다고 하기 때문에 2.1이상의 버전에서 더 상위 버전으로의 Upgrade에는 발생하지 않을 수 있습니다.

 

이 버그에 대한 증상은

 1. APIC 업그레이드 중에 먼저 진행된 APIC은 정상적으로 Upgrade가 완료되었으나, 이후에 업그레이드 되는 APIC의 상태가 75%에서 멈춰있게 됩니다.  이 경우 75%에서 멈춰있는 APIC에서 확인 할 때, 정상적으로 완료된 APIC의 정보가 기존 버전으로 표기

 

 2. 모든 APIC이 정상적으로 업그레이드가 되고, fully fit 상태까지 되었으나 각 장비에서 acidiag로 확인 시에는 local APIC에 대한 버전만 최신 버전이고 다른 APIC은 기존 버전으로 표기

 

상태를 확인해보면, APIC 2번기가 정상적으로 Upgrade된 상태에서 APIC 3번기가 Stuck이 걸려있을 때,

APIC 2번에서는 2번기 상태를 보면 정상적으로 Upgrade가 되어 있고

APIC 3번기에서 2번기를 상태를 보면, 기존 OS이고 time stamp도 정상적으로 업그레이드 된 시간보다 더 이후 시간으로 체크되어 있음.

 

apic2# acidiag avread | egrep "id=2.*version" | cut -d ' ' -f 7-10,20-21
appliance id=2 version=2.2(2k) lm(t):2(2017-07-25T11:24:01.244+10:00)

apic3# acidiag avread | egrep "id=2.*version" | cut -d ' ' -f 7-10,20-21
appliance id=2 version=2.0(2f) lm(t):2(2017-07-25T11:40:02.248+10:00)

 

2.1 이상에서는 해당 버그가 없기 때문에 2.1 미만의 버전에서만 발생합니다.

 

해당 버그가 발현될 경우에는

위의 예의 APIC 3에서 APIC 2의 정보를 정상적으로 가져오지 못한 상태가 되는 데,

APIC 2에서 "acidiag restart mgmt"를 통해서 APIC에 서비스를 재기동하면

APIC 3에서 APIC 2에 대한 정보가 업데이트 되면서, 정상적으로 Upgrade를 진행 할 수 있습니다.

 

 

 

Posted by 네떡지기

이번 포스팅은 ACI Bug Report 관련 내용입니다.

 

ACI OS Upgrade를 위해서 관리서버인 APIC을 먼저 OS Upgrade를 진행을 합니다.

APIC OS 업그레이드 과정 시, APIC의 재부팅을 하는 도중에 정상적으로 부팅을 하지 못하는 문제가 발생할 수 있습니다.

이 경우 장비에 Console을 붙여서 확인을 하면 다음과 같이 표기됨을 확인할 수 있습니다.

 

APIC 1 Console shows:
do_boot_cpu failed(-1) to wakeup CPU#2
do_boot_cpu failed(-1) to wakeup CPU#3
do_boot_cpu failed(-1) to wakeup CPU#4
do_boot_cpu failed(-1) to wakeup CPU#5
.
.
.
.
do_boot_cpu failed(-1) to wakeup CPU#23

 

 

관련하여 Bug Report(CSCvd84590:scale1-apic1: do_boot_cpu() failed at GRUB starting to boot the Kernel)가 있습니다.

 

해당 버그에 대해서 알려진 버전은 2.2(1.210a), 2.2(2i)이며,

fixed 버전은 3.1(1i), 3.1(0.154), 2.2(3.13)입니다.

 

실제 영향 받는 버전은 더 있을 것으로 보입니다.

 

해당 버그에 대한 조치 방법은 APIC 자체를 실제 전원까지 제거하여 Cold Reboot를 진행하시면 됩니다.

Posted by 네떡지기
DevOps/Programmability2017.06.27 02:09

Today Keys : cisco, aci, apic, python, package, sdk, cobra, programming, programmable, automation, installation 


이번 포스팅은 Cisco ACI의 Python SDK인 cobra를 위한 기본 설치 과정에 대한 내용입니다. 
ACI의 경우에는 기본적으로 APIC Gui를 통해서 설정을 진행하고 있지만, 
설정해야 하는 부분이 많아지게 되면, GUI로는 어려운 면이 없지 않아 있습니다. 
그럴 때, 사용될 수 있는 부분이 XML이나 JSON을 이용한 POST로 파일을 직접 올려서 설정하는 방법도 있지만
해당 기능이 모든 설정에 대해서 지원하지는 않습니다. 

APIC Python SDK를 사용하여, POST로 지원되지 않는 설정을 GUI가 아닌 Code로써 손쉽게 설정할 수 있습니다.
(물론 코드를 작성해야 한다는 부담은 있지만, GUI를 통한 대량의 Click보다는 나은 선택이 아닐까 싶습니다)


Cisco APIC Python SDK은 'cobra'라고 합니다. 

cobra를 이용한 프로그래밍을 하기 위해서는 다음의 2개 패키지를 설치해야 합니다. 


acicobra (SDK) 

acimodel (ACI MIT Model Package)

 

이 2개이 패키지는 APIC에서 아래의 URL을 통해서 다운로드 받을 수 있습니다. 


  http[s]://APIC Address/cobra/_downloads/ 




이 디렉토리 내에는 다음의 2개의 .egg file들이 존해아며, 파일 이름에는 APIC과 Python 버전 정보가 함께 표기되어 있습니다.

따라서, APIC 버전에 따라서 다음의 파일명은 조금 다를 수 있습니다. 

 

 위의 패키지 2개를 다운로드 받은 이후에는 설치해야 하는 데, 

이를 설치하기 위해서는 다음의 패키지가 사전에 반드시 설치 되어 있어야 합니다. 

 Python 2.7, easy_install , pip , virtualenv 

 위의 사전 설치 패키지를 모두 설치하고 나면, APIC에서 다운 받은 파일을 설치를 진행해야 하는 데, 

 이 때 다음의 2가지 사항에 유의해야 합니다. 


   acicobra SDK와 acimodel Package를 설치는 반드시, acicobra SDK를 먼저 설치 후에 acimodel을 설치

  ◇ 기존에 설치된 acicobra SDK가 있다면, 설치 전에 먼저 Uninstall 을 한 이후에 재 설치. 


APIC SDK 설치는 Windows와 Linux 환경 모두 설치가 가능하며, 

이번 포스팅에서는 Windows 환경에서의 설치를 살펴보겠습니다.



 Windows에 SDK 설치하기

1. Windows 환경 변수의 Path에 Python 경로와 Python scripts 경로를 추가

2. easy_install 명령을 이용하여 acicobra SDK egg 파일을 설치 

      easy_install -Z acicobra-X.X-pyX.X.egg

 Windows에 ACI Model Package 설치하기

1. easy_install 명령을 이용하여 acicobra SDK egg 파일을 설치 

      easy_install -Z acimodel-X.X-pyX.X.egg


 ACI SDK, Model Package 설치 확인

pip show 명령어를 사용하여, 정상적으로 SDK와 Package가 설치되었는지를 확인합니다.



* 관련 링크 : https://developer.cisco.com/media/apicDcPythonAPI_v0.1/install.html




Posted by 네떡지기

티스토리 툴바