목차

소개

개념

사전 요구 사항

컨피그레이션 단계

문제 해결 및 확인

소개

이 문서에서는 Cisco ACI 환경의 Call Home 컨피그레이션에 대해 설명합니다.

개념

CallHome 기능을 사용하면 진단 정보, 환경 장애 또는 이벤트 등 패브릭 기능에 대한 중요한 알림을 이메일을 통해 수신할 수 있습니다. CallHome 대상 프로필을 통해 이러한 알림을 여러 수신자에게 전달하며, 특정 메시지 형식 및 콘텐츠 카테고리로 구성할 수 있습니다.

사전 요구 사항

- 패브릭은 4.2(1) 이상이어야 합니다.

- 모든 패브릭 디바이스는 SMTP/E-Mail 서버에 대한 네트워크 연결이 있어야 합니다.

- 패브릭 디바이스와 SMTP/E-Mail 서버 간에는 통신 TCP 포트 25를 허용해야 합니다.

컨피그레이션 단계

1단계: APIC에 로그인합니다.

- 관리자 자격 증명을 사용하여 APIC에 액세스합니다.

2단계: CallHome 대상 그룹을 생성합니다.

- APIC > Admin > External Data Collectors > Monitoring Destination으로 이동합니다

- CallHomefolder를 마우스 오른쪽 버튼으로 클릭하고 Create CallHome Destination Group(CallHome 대상 그룹 생성)을 선택합니다.

3단계: 필수 상세내역을 입력합니다.

필요한 세부 사항은 아래에 나와 있습니다.

- 이름 - CallHome 대상 그룹의 이름

- Admin(관리자) - 이 옵션을 활성화합니다.

- 포트 - 25, SMTP가 통신할 포트 번호.

- SMTP 서버 - SMTP 서버의 DNS 이름 또는 IP 주소

- 보낸 사람 이메일 - 패브릭에서 메시지를 보내는 이메일 주소

- 관리 EPG - SMTP 서버에 연결할 수 있는 oob 또는 inb EPG

- Contact Email(연락처 이메일) - 메시지를 수신할 이메일 주소

- 다음 페이지에서는 정확한 대상(즉, CallHome 메시지 수신자)을 생성할 수 있습니다.

- + 기호 및 필드 채우기 클릭

- Name(이름) - 대상 이름

- Admin state(관리 상태) - 비활성화된 경우 대상에서 메시지를 수신하지 않습니다.

- Level - 대상으로 전송될 메시지의 심각도 수준입니다. 이 세트는 error 이상으로 설정하는 것이 좋습니다. 심각도 수준 표는 아래에 나와 있습니다.

- Email(이메일) - 메시지를 보내야 하는 실제 이메일 주소

- 형식 - 인바운드 메시지를 자동으로 구문 분석하지 않을 경우 이를 short-txt로 설정합니다. 우리는 그들 사이의 차이점을 보기 위해 실험을 할 수 있다.

- 최대 크기(바이트) - 단일 이메일 메시지의 최대 크기입니다. Format을 aml 또는 xml로 설정하는 경우 메시지는 상당히 클 수 있으므로 100-200KB 수는 괜찮습니다. 우리는 이 숫자로 실험을 해서 필요한 크기를 결정할 수 있다. short-txt 형식의 경우 이를 10KB로 설정하기에 충분해야 합니다.

- RFC 준수 - 더 나은 표현은 이를 활성화하지 않습니다.

- 필요한 만큼 대상을 생성할 수 있으며, CallHome 대상 그룹을 마우스 오른쪽 버튼으로 클릭하고 CallHome 대상 생성을 선택하면 더 많은 대상을 생성할 수도 있습니다.

4단계: Callhome 쿼리 그룹 생성

- APIC > Admin > External Data Collectors > CallHome Query Groups로 이동합니다.

- CallHome Query Groups(CallHome 쿼리 그룹) 폴더를 마우스 오른쪽 버튼으로 클릭하고 Create CallHome Query Group(CallHome 쿼리 그룹 생성)을 선택합니다.

- 쿼리 그룹의 이름을 정의하고+sign을 클릭하여 쿼리 정의를 생성합니다.

- 이름 - 쿼리 이름

- 유형 - 변경 사항을 모니터링할 객체 유형의 선택기입니다. 저는 "고유 이름"을 의미하는 것을 선택했습니다.

- DN 또는 Class Name - 모니터링되는 객체의 이름입니다. 그리고 그것이 마법이 작용하게 되는 부분입니다! 이 필드에 어떤 종류의 개체 이름 또는 어떤 것을 삽입해야 하는지에 대한 어떠한 종류의 설명도 찾을 수 없습니다. APIC 이전 버전 4에서는 이 필드가 필요하지 않았습니다. 버전 4부터는 필수 항목입니다. 만약 우리가 ddnforType을 선택한다면, 우리는 문자 그대로 "전체 우주" 또는 다른 말로 "모든 직물 물체"를 의미하는 여기에 넣을 수 있다.

- Target(대상) - 쿼리에서 반환된 개체에 대해 하위 트리 정보를 포함해야 하는지 여부를 선택합니다. 여기에서 서브스크립션을 선택했습니다.

- 하위 트리 - 쿼리에서 반환해야 하는 하위 트리 개체를 선택합니다. 저는 여기서 다 골랐어요.

- Include- 쿼리에서 반환할 개체의 유형입니다. 모두 골랐어요.

5단계: 패브릭 모니터링 정책 및 CallHome 소스 생성

이제 CallHome 대상 및 쿼리가 구성되었으므로 모니터링 정책 수정으로 이동할 수 있습니다.

- APIC > Fabric > Fabric Policies > Policies > Monitoring으로 이동합니다.

- "Monitoring Object(모니터링 개체)" 드롭다운에서 "ALL(모두)" 값을 선택하고 "Source Type(소스 유형)"을 "CallHome"으로 설정해야 합니다.

- 오른쪽 창의 맨 오른쪽 부분에서 클릭+로그인

- 이름 - CallHome 소스 이름(Callhome_Source)

- Include(포함) - 수신할 알림 종류를 선택합니다.

- Level(레벨) - 작업을 트리거할 이벤트 심각도(선택한 레벨 이상)

- Destination Group(대상 그룹) - 여기에서 전에 생성한 CallHome Destination Group(콜홈 대상 그룹)을 선택합니다.

- Query Group(쿼리 그룹) - 여기에서 전에 만든 CallHome 쿼리 그룹을 선택합니다.

- 제출을 클릭합니다.

참고: 설정이 완료되면 서로 다른 모니터링 개체에 대해 별도의 CallHome 소스를 만들고 여러 CallHome 대상 그룹 및 쿼리를 사용하여 모니터링 정책을 미세 조정할 수 있습니다

6단계: 액세스 정책 CallHome 소스

이 섹션에서는 패브릭 액세스 정책을 구성하여 CallHome 소스를 생성합니다.

APIC > Fabric > Access Policies > Policies > Monitoring으로 이동합니다

- Monitoring(모니터링) 폴더에서 기본 모니터링 정책을 찾습니다. 기본 정책을 열고 CallHome/Smart CallHome/SNMP/Syslog/TACACS 폴더를 클릭합니다.

- Monitoring Object(모니터링 개체) 드롭다운에서 ALL(모두)이 선택되고 Source Type(소스 유형)이 CallHome으로 설정되어 있는지 확인합니다.

- 오른쪽 창의 맨 오른쪽 부분에서 클릭+로그인:

- 이름 - CallHome 소스 이름 입력(Access_CallHome)

- 포함 - 수신할 알림 종류를 선택합니다.

- Level(레벨) - 작업을 트리거할 이벤트 심각도(선택한 레벨 이상)

- 대상 그룹 - 여기서는 이전에 생성한 CallHome 대상 그룹을 선택합니다

- 쿼리 그룹 - 이전에 만든 CallHome 쿼리 그룹을 선택합니다.

7단계:  이러한 변경을 수행한 후에는 구성된 메일 ID에 대한 이메일 알림을 수신해야 합니다.

문제 해결 및 확인

1. SMTP 서버 연결 확인

APIC 및 리프 디바이스 모두 TCP 포트 25를 통해 SMTP 서버에 연결할 수 있는지 확인하려면 ping 및 텔넷 테스트를 수행합니다.

1.1 Ping 테스트

SMTP 호스트에 대한 기본 네트워크 연결성을 확인하려면 아래 명령을 사용하십시오.

APIC의 경우:

APIC # ping x.x.x.x

리프 스위치에서:

Leaf# iping x.x.x.x

1.2 텔넷 테스트(포트 25)

다음 명령을 실행하여 SMTP 포트 25가 열려 있고 연결 가능한지 확인합니다.

APIC의 경우:

APIC # curl -v telnet://smtp_server_ip:port

Example :

APIC# curl -v telnet://x.x.x.x:25

리프 스위치에서:

Leaf# icurl -v telnet://smtp_server_ip:port

Example:

Leaf#icurl -v telnet://x.x.x.x:25

2. CallHome 구성 검증

CallHome이 APIC 및 leaf 스위치 모두에 올바르게 구성되어 있는지 확인합니다.

2.1 CallHome 프로필 검증

프로필이 올바른 포트 및 매개변수로 구성되었는지 확인합니다.

APIC의 경우:

Apic# moquery -c callhomeProf

리프 스위치에서:

Leaf# moquery -c callhomeProf

2.2 CallHome 대상 검증

대상 SMTP 서버 및 포트가 올바르게 설정되었는지 확인합니다.

APIC의 경우:

Apic# moquery -c callhomeDest

리프 스위치에서:

Leaf# moquery -c callhomeDest

3. CallHome 이메일 전송 확인

일반적인 ACI 패브릭에서는 3노드 클러스터의 APIC2에서 CallHome 메시지가 시작됩니다. APIC2를 사용할 수 없는 경우 이러한 메시지는 리프 스위치에서 발생할 수 있습니다. CallHome 메시지의 소스 및 전송을 확인하려면 관련 인터페이스에서 tcpdump를 사용합니다.

APIC에서 3.1(루트 액세스 필요)

인밴드 관리가 구성된 경우 bond 0.330을 인밴드 관리에 사용되는 VLAN으로 교체합니다.

Apic# tcpdump -i bond0.330 port 25

리프 스위치에서:

발신 SMTP 트래픽을 모니터링하려면 kpm_inb 인터페이스를 사용합니다.

Leaf# tcpdump -i kpm_inb port 25

4. CallHome, SMTP 연결 및 모니터링 정책을 성공적으로 구성하고 확인한 후에도 이메일을 통해 인터페이스 오류 알림을 수신할 수 없는 경우도 있습니다.

트러블슈팅하려면 다음 단계를 수행하십시오.

Object Store Browser를 사용하여 결함을 검사합니다.

4.1 Cisco ACI GUI에서 해당 인터페이스로 이동합니다.

4.2 인터페이스를 마우스 오른쪽 버튼으로 클릭하고 "Open in Object Store Browser(개체 저장소 브라우저에서 열기)"를 선택합니다(시각적 지침은 아래 스크린샷 참조).

4.3 Object Store Browser(개체 저장소 브라우저)에서 결함 개체와 연결된 DN(Distinguished Name)을 찾습니다.

4.4 DN을 식별한 후 APIC CLI에 액세스하고 다음 명령을 실행하여 객체에 대한 세부 정보를 쿼리합니다.

예:-

apic# moquery -d "topology/pod-1/node-101/sys/phys-[eth1/1]"

4.5. 이전 명령의 출력에서 monPolDn 필드를 찾습니다.

예를 들면 다음과 같습니다.

monPolDn : uni/infra/moninfra-default

이 필드는 인터페이스 객체에 적용된 모니터링 정책 DN(Distinguished Name)을 나타냅니다.

4.6 이 예에서 모니터링 정책은 다음과 같습니다. uni/infra/moninfra-default

이는 Infra 테넌트의 기본 모니터링 정책이 인터페이스에 적용되었음을 보여줍니다.

4.7 CallHome이 인터페이스 결함에 대한 알림을 생성하고 전송하도록 하려면

Infra 테넌트 아래에 CallHome 컨피그레이션이 있는지 확인합니다.

모니터링 정책(이 경우 moninfra-default)이 올바르게 구성된 CallHome 프로필에 연결되어 있는지 확인합니다.