|

[Aruba DevNet 3강] 스위치 동시 설정 자동화: Windows 파이썬 vs Linux 앤서블(Ansible)

⏱️ 예상 읽기 시간: 약 6분 (6 min read)

2강에서 우리는 New Central API를 통해 데이터를 ‘읽어오는’ 자동화를 경험했습니다.
하지만 엔지니어의 심장을 뛰게 하는 것은 역시 ‘장비 설정을 내 마음대로 주무르는 것’이죠.

오늘은 Aruba CX 스위치를 대상으로, 두 가지 환경(Windows & Linux)에서 각각 어떻게 자동화를 구현하는지 비교하며 배워보겠습니다.

CX 스위치는 REST API를 지원하기 때문에 다양한 방식의 자동화 및 프로그래밍이 가능합니다.

[Aruba DevNet 3강] 스위치 동시 설정 자동화: Windows 파이썬 vs Linux 앤서블(Ansible) - image 3

1. 자동화 도구, 무엇을 쓸까? (Netmiko vs Ansible)

  • Windows 환경: 리눅스 설치가 부담스럽다면? 가장 대중적인 Netmiko 라이브러리가 정답입니다.
    파이썬만 있으면 어디서든 스위치에 SSH로 접속해 설정을 밀어 넣을 수 있습니다.
  • Linux 환경: 본격적인 IaC(Infrastructure as Code)를 원한다면? Ansible이 표준입니다.
    별도의 코딩 없이 YAML 파일만으로 수백 대의 스위치를 동시에 관리할 수 있습니다.

2. [Windows] 파이썬 Netmiko로 가볍게 시작하기

윈도우 사용자라면 지난 시간 세팅한 환경에서 라이브러리 하나만 더 추가하면 됩니다.

PowerShell
python -m pip install netmiko

[cx_config.py]

Python
from netmiko import ConnectHandler

# 스위치 접속 정보
device = {
    'device_type': 'aruba_os_cx',
    'host': '192.168.1.100',
    'username': 'admin',
    'password': 'Password!',
}

# 적용할 설정 명령축
commands = [
    'vlan 10',
    'name Guest_VLAN',
    'interface 1/1/1',
    'vlan access 10'
]

with ConnectHandler(**device) as net_connect:
    print("🚀 스위치 설정 중...")
    output = net_connect.send_config_set(commands)
    print(output)

3. [Linux] Ansible로 강력한 일괄 제어 구현하기

리눅스(Ubuntu/WSL) 환경이라면 Aruba에서 공식 제공하는 Ansible Collection을 사용하는 것이 가장 강력합니다.

[설치]

Bash
# 앤서블 및 Aruba 컬렉션 설치
sudo apt update && sudo apt install ansible -y
ansible-galaxy collection install arubanetworks.aos_cx

[inventory.ini] – 관리 대상 스위치 목록

INI
[cx_switches]
sw-leaf-01 ansbile_host=192.168.1.101
sw-leaf-02 ansbile_host=192.168.1.102

[cx_switches:vars]
ansible_user=admin
ansible_password=Password!
ansible_network_os=arubanetworks.aos_cx.aos_cx

[vlan_setup.yml] – 실제 “무엇을 할지” 정의한 플레이북

YAML
---
- name: Aruba CX 스위치 VLAN 일괄 설정
  hosts: cx_switches
  gather_facts: no
  tasks:
    - name: VLAN 10 생성 및 이름 부여
      arubanetworks.aos_cx.aos_cx_vlan:
        vlan_id: 10
        name: "DevNet_VLAN"
        state: present

[실행]

Bash
ansible-playbook -i inventory.ini vlan_setup.yml

4. 환경에 맞는 도구 선택법

“무조건 앤서블이 최고다”라고 할 수는 없습니다.

  • 1회성 작업이나 간단한 확인: 윈도우에서 Netmiko로 빠르게 스크립트를 짜는 것이 효율적입니다.
  • 정기적인 운영 및 표준화: 서버에 Ansible을 구축해두고 설정 파일(YAML)을 버전 관리(Git)하는 것이 유지보수에 유리합니다.

중요한 것은 어떤 도구를 쓰든 “내가 직접 콘솔에 접속해 타이핑하는 시간을 줄이는 것”입니다.


마치며

오늘 우리는 Windows와 Linux라는 두 개의 날개를 달았습니다.
이제 Aruba CX 스위치는 여러분의 코드 한 줄에 일사불란하게 움직일 준비가 되었습니다.

다음 4강에서는 “Aruba Central에서 Webhook과 슬랙(Slack) 연동”을 통해, 장애가 발생하면 장비가 직접 나에게 말을 거는 지능형 자동화를 만들어 보겠습니다!

유사 게시물

  • [ACP-DC 교육#7] 데이터센터 스위치 배포

    ⏱️ 예상 읽기 시간: 약 16분 (16 min read) 데이터센터 스위치를 배포하는 것은 캠퍼스 스위치를 설치하는 것과 비슷해 보일 수 있지만, 데이터센터만의 특별한 점들이 있습니다.특히 데이터센터 스위치는 현장에 들여오기 전에 미리 설정을 준비하는 ‘스테이징(Staging)’ 과정을 거치는 경우가 많습니다. 오늘은 스위치 스테이징이 무엇인지, 그리고 두 가지…

  • HPE Aruba Networking 데이터센터 포트폴리오

    AOS-CX 스위치 제품은 데이터센터 네트워크 구축을 위한 강력한 하드웨어와 스마트한 운영체제를 제공합니다. 이 스위치는 다양한 모델을 통해 높은 성능과 유연성을 제공하며, 관리 효율성을 강화하여 최신 데이터센터의 요구에 맞춰 최적화된 솔루션을 제시합니다.

  • [ACP-DC 교육#1] 데이터센터 네트워크 소개

    ⏱️ 예상 읽기 시간: 약 14분 (14 min read) HPE Aruba Networking Certified Professional – Data Center (ACP-DC) 자격증은 HPE Aruba Networking 데이터 센터 제품을 기반으로 안전하고 확장 가능하며 복원력이 뛰어난 고성능 데이터 센터 네트워크 인프라를 설계, 배포, 관리하는 데 필요한 지식과 기술을 시험합니다. 가상화된…

  • [ACSA 교육#13] 계층적 모델

    ⏱️ 예상 읽기 시간: 약 4분 (4 min read) 네트워크를 설계하고 디자인할 때 계층적 디자인에 대해서 이야기를 많이 합니다.영어로는 Hierarchical Model이라고 얘기하는데요. 과연 이것이 왜 필요한지 한 번 알아보겠습니다. 계층적 모델은 네트워크의 모듈형태로 제공합니다. 결국 이것은 설계를 단순화하고, 향후 인프라 확장에 대한 부분까지 제공하게 됩니다….

  • EVE-NG로 시뮬레이터 Lab 구성하기

    ⏱️ 예상 읽기 시간: 약 4분 (4 min read) Aruba AOS-CX 시뮬레이터를 사용해보기 위해서는 EVE-NG와 같은 에뮬레이터 설치가 먼저 필요합니다. 아직 설치하지 않았다면, VMware나 Hyper-V와 같은 하이퍼바이저를 통해 가상머신으로 설치하시면 됩니다. Hyper-V에 설치하는 방법은 이전에 작성한 게시물을 참고해주세요. 정상적으로 EVE-NG를 설치하였다면, 이제 가상 Lab을 꾸미기…

  • [ACP-DC 교육#10] VSX (2)

    ⏱️ 예상 읽기 시간: 약 8분 (8 min read) 지난 글에서는 HPE Aruba Networking AOS-CX 스위치의 가상화 기술인 VSX에 대해 알아보았습니다. VSX의 구성요소와 VSF와의 차이점, 장점 등을 설명했는데요. 오늘은 실용적인 부분들을 다뤄볼까 합니다. 실제 VSX를 활용해서 소프트웨어 라이브 업그레이드 방법이라든가 Split brain과 같은 기술을 살펴보겠습니다….