본문으로 바로가기
728x90

1. Meraki API Key 생성

Meraki API를 사용하기 위해 대시보드에서 API Key를 생성해야 합니다.

[Profile] - [API access]에서 [Generate new API key]를 클릭해 키를 발급받습니다~

 

 

이때 생성된 API Key는 보안상 한 번만 확인 가능하기 때문에 반드시 별도로 저장해두어야 합니다.
해당 키는 이후 Python 코드에서 Meraki Dashboard에 접근하기 위한 인증 수단으로 사용됩니다.

 

 

2. 개발 환경 구성

Python 환경에서 Meraki API를 사용하기 위해 공식 라이브러리를 설치합니다~

 

 

3. 파이썬 코드 작성

이번 실습에서는 하나의 Python 스크립트를 작성하여 장비 상태를 조회하고 CSV 파일로 저장하도록 구성했습니다.

코드는 AI를 활용해 작성했으며, 전체 흐름은 크게 5단계로 나뉩니다.

 

1) API Key  Organization ID 설정
이 값은 조회 대상 조직과 인증 정보를 의미합니다.

 

2) DashboardAPI 객체 생성 (세션 연결)

DashboardAPI 객체를 생성하여 Meraki Cloud와 세션을 연결합니다. 이 과정이 완료되면 API 호출을 통해 데이터를 가져올 수 있는 상태가 됩니다.

 

3) Organization 내 장비 상태 조회

getOrganizationDevicesAvailabilities 함수를 사용하여 Organization에 등록된 모든 장비의 상태를 조회합니다. 이 함수는 다음과 같은 정보를 반환합니다.

  • 장비 이름
  • 시리얼 번호
  • 제품 타입 (Switch, AP 등)
  • 상태 (online / offline)
  • 네트워크 ID

즉, 기관 전체 장비의 현재 상태를 한 번에 가져오는 핵심 단계입니다.

 

4) CSV 파일명 생성

현재 시간을 기준으로 CSV 파일명을 생성합니다. 이렇게 하면 스크립트를 여러 번 실행하더라도 파일이 덮어쓰이지 않고, 시간별로 리포트를 관리할 수 있습니다.

 

5) CSV 파일로 저장

조회된 데이터를 반복문을 통해 CSV 파일에 저장합니다. 각 장비의 이름, 시리얼 번호, 제품 타입, 상태, 네트워크 ID를 한 줄씩 기록하도록 구성했습니다.

 

 

4. 결과

스크립트를 실행하면 현재 시점을 기준으로 CSV 파일이 생성됩니다. 파일에는 조직 내 장비들의 상태 정보가 정리되어 저장되며, 네트워크 상태를 한눈에 확인할 수 있습니다.

결과를 보면, 스위치는 online 상태로 정상 동작 중이며 시리얼 번호와 장비 이름이 함께 표시되는 것을 확인할 수 있습니다. 특정 AP는 offline 상태로 표시되어 있어 현재 네트워크에서 장애가 발생했거나 연결이 끊긴 상태임을 확인할 수 있습니다~

 

끝.

728x90
LIST