ACI Fabric 에서 트래픽 이슈의 트러블슈팅 시 ingress leaf 에서 패킷을 host-facing 포트로부터 받았는지, 받았다면 ingress leaf에서 드랍을 했는지, 그리고 드랍을 했다면 드랍 원인이 무엇인지, 드랍을 안 했으면 egress leaf에서 패킷을 패브릭 포트로부터 받았는지, 받은후 또 드랍을 했는지 ... 등에 대한 분석을 하기 위하여 스위치에 내장이 되어있는 ELAM이라는 툴을 사용하게 됩니다.하지만 사용법이 어려워 일반적으로 TAC 엔지니어들만 사용하고 있는데 일반 사용자도 쉽게 사용할 수 있는 APP을 소개해 드리려고 합니다.
E.g: 구성은 서로 다른 EPG에 있는 두 EP간의 통신입니다. 두 EPG간에 컨트랙이 있어야 통신이 되는 설계입니다.
Case1 , 컨트랙 적용에 문제가 없어 통신이 가능한 경우 : 로그인 후 ready 상태가 되면 시작할 수 있습니다.
Add node 시 , 만약 ingress leaf와 egress leaf가 각기 어떤 노드인지 잘 모를 경우, 가능성이 있는 node들을 모두 add하면 됩니다.
예를 들어, vpc인 경우에는 어떤 vpc pair에서 패킷을 받을지 모르기 때문에 두 대의 vpc pair를 모두 add하면 됩니다.
위의 이미지에 보이는 케이스에서는 ingress leaf 가 101이고 egress leaf가 102인걸 알고 있으므로 이 두 대의 node만 넣었고, 101이 source이기 때문에 from downlink 로, 102는 destination leaf이기 때문에 from fabriclink로 설정합니다.
Parameters 는 filter 조건인데 보통 src_ip 와 dst_ip 로 하면 되며, 둘중 하나만 해도 됩니다. L2 flow일 경우에는 MAC으로 잡아도 좋습니다.
설정을 완료하고 Set ELAM 누른 후 조금 기다리면 Not Set이 Set으로 변경이 됩니다.
그 다음 Check Trigger 를 누르면 아래처럼 패킷을 받은 node에서 report 생성이 됩니다.
여기에서 만약 Check Trigger 를 눌렀을 때 Set상태에서 반응이 없으면 트리거가 안 되었다는것을 의미합니다, 즉, leaf가 패킷을 받지 못했다는 것입니다.
Report Ready 를 누르면 아래와 같은 자세한 정보를 확인할 수 있습니다.
Node101:
Node102:
위 이미지와 같이 case1의 경우는 드랍 없이 포워딩이 잘 되었습니다.
Case2 , 컨트랙을 삭제하여 컨트랙 문제로 드랍이 되는 경우:
두 EPG사이에 컨트랙이 없기 때문에 ingress leaf인 101에서 패킷을 받았지만 드랍이 됩니다.
따라서 아래처럼 Check Trigger 를 눌렀을 때 101에만 report 생성이 되고, 102는 Set에서 변함이 없는 것을 확인할 수 있습니다.
101 report:
이상 ACI ELAM 소개 및 ELAM Assistant APP 사용법에 대하여 정리해보았습니다.