본문 바로가기
Network

[NSX-T] Postman으로 NSX-T API 연동하기

by chan10 2024. 5. 11.

NSX-T는 웹으로 접속해서 사용할 수도 있지만 다양한 API를 제공합니다.

이러한 API를 사용하면 작업 수행 시 더 빠르게 수행할 수 있으며 특히 반복적인 작업 수행에서 큰 효과를 얻게 됩니다.

이번 포스팅에서는 NSX-T API와 통신하기 위한 postman 설정하는 방법을 다룹니다.

 

NSX-T API가 워낙 다양하게 있기에 사용 목적에 맞는 API를 찾아야 합니다.

그러나 다행히도 아래 링크에 접속하면 공유된 postman NSX-T workspace가 있습니다.

 

[NSX-T workspace]

NSX-T APIs | NSX-T Workspace

 

NSX-T APIs | NSX-T Workspace

Get started with David Doolittle's APIs with the NSX-T APIs collection on the Postman Public API Network

www.postman.com

 

저장되어 있는 API 목록을 개인의 postman에 저장하기 위해 export를 합니다.

collection 오른쪽 점 표시를 누르면 export가 나오며 collection 별 하나씩 진행합니다.

 

링크의 collection들을 export했다면 이제 개인 postman을 실행합니다.

왼쪽 상단의 import 클릭 후 export로 가져온 파일을 선택하면 API들을 가져올 수 있습니다.

(저는 폐쇄망 환경에서 사용했습니다. 오프라인 사용이 가능한 낮은 버전을 사용하기에 화면이 조금 다를 수 있습니다..!!)

 

API까지 성공적으로 가져왔다면 여러 API에서 공통적으로 사용할 환경 변수를 설정합니다.

New → Environment 메뉴에서 설정 할 수 있습니다.

 

먼저 환경 변수 들을 저장할 이름 및 저장할 환경 변수를 작성합니다.

저는 접속할 URL, 계정 id/pw로 3가지 환경 변수를 설정했습니다.

 

환경 변수를 생성했지만 자동으로 적용되는게 아니기에 선택을 해줘야합니다.

방금 생성했던 환경 변수를 선택하고 API 하나를 클릭하면 작성했던 환경 변수들이 주황색으로 인식된 것을 볼 수 있습니다.

 

환경 변수가 인식되지 않으면 아래 사진처럼 빨간색으로 표시됩니다.

 

HTTPS-SSL 통신 시 인증서 확인 절차를 수행하는데 postman에서 자체 서명된 사설 인증서는 막히게 됩니다.

정상적으로 발급된 인증서만 유효하다고 판단하기에 SSL 유효성 확인 기능을 비활성화 시켜줘야 합니다.

File → Settings → SSL certificate verification을 Off 합니다.

 

최선 버전은 이런식으로 settings 위치가 조금 다릅니다.

 

Manager API를 예로 요청을 해보려고 했으나 성공적으로 호출되지 않아서 찾아보니 URL 수정이 필요했습니다.

변경 전 - GET : https://{{baseUrl}}/spec/openapi/nsx_api.json

변경 후 - GET : https://{{baseUrl}}/api/v1/spec/openapi/nsx_api.json

 

URL 수정 후 다시 호출을 한 결과 현재 사용 중인 NSX-T Manager 정보를 받아 올 수 있었습니다.

 

[참고사이트]

https://rutgerblom.com/2019/06/16/getting-started-with-the-nsx-t-api-and-postman/