본문 바로가기

내 이야기

(602)
Programmability for Networker : Part 18 (Junos PyEZ:2) PyEZ라는 Junos OS 장비를 다룰 수 있도록 해주는 Python용 micro-framwork라고 하는 Library를 다뤄봅니다. 이번 포스팅에서는 PyEZ가 무엇인지 아주 간단히, 그리고 아주 간단한 예제를 통해서 가볍게 접근해봅니다. Juniper PyEZ Library ○ PyEZ를 통한 Configuration 관리 • PyEZ를 통한 설정 관리 : Unstructured / Structured • Unstructured - 지원되는 특정 포맷 형식에 Junos Config를 전달하여 관리 - 다수의 변수를 가진 Template을 사용하면 보다 쉽고 빠르게 사용 가능 • Structured - 설정 / 속성에 접근하는 프로그래밍 방법을 잘 정의한 추상화 자원을 사용 - 추상화 자원은 Pup..
Automation for Networker[6] - Ansible : Part 4 Automation for Networker로 다시 또, 오랜만에 포스팅을 하게 됩니다. 이번 포스팅은 Automation Tool인 Ansible을 활용하여 Cisco 장비를 제어하는 예제입니다. 기본 Ansible을 활용하여 Cisco 장비를 제어하는 것은 NX-API를 사용하는 데, NX-API는 제한적으로만 장비에서 지원되기 때문에 아직까지는 사용하는 데 있어서 제한이 있습니다. 이를 위해 SNMP를 사용하여 장비를 제어할 수 있도록 해주는 라이브러리를 사용하여 Ansbile로 시스코 장비를 다뤄봅니다. 원래 지난 Automation for Networker 5에 이어서 Arista 장비에 대한 예제를 다루려고 했으나, 네트워크 타임즈에 2월호부터 기고 중인 Programmability for N..
자동화 도구(Automation Tool) ○ 자동화 도구(Automation Tool) - 자동화 도구로 쓰이는 Puppet, Chef, Ansible, Salt 에 대한 간단한 비교 장표입니다.
Automation for Networker[5] - Ansible : Part 3 Ansible Arista 제어 거의 한 달여만의 포스팅이자, Automation for Networker 시리즈로는 거의 3~4달여만 남기는 것 같습니다. 이래 저래.. 일도 있고, 2월부터 4월까지 예정중인 네트워크 타임즈 기고 건 때문에 조금 더디게 정리하고 있기도 합니다. ^^; 이번 포스팅은 4월 네트워크 타임즈 기고에서도 다뤄지게 될 내용인, Ansible을 통한 Arista Switch를 제어하기의 첫 번째 시간인 환경 구축입니다. 다음 포스팅은 이 환경 구축을 통한 실제 Ansible로 Arista swtich 제어하는 에제를 다루게 될 예정입니다. 길이는 무척이나 짧지만, 인고의 삽질 끝에 얻어낸 축약된 내용입니다. ^^; Ansible로 Arista Switch 제어하기 1. Arist..
Programmability for Networker : Part 17(Cisco NX-API) NX-API 기존의 Python for Networker라는 주제로 포스팅하던 것을, 주제를 넓혀보고자.. Programmability for Networker로 이름을 변경하고 지속해서 시작합니다. ^^; 이번 포스팅은 Cisco의 Programmability를 지원하는 NX-API에 대한 포스팅입니다. NX-API - Cisco Programmability ◈ NX-API - HTTP/HTTPS의 RPC 기반의 API 기능 수행 - 'show', 'configuration', 'Linux Bash' 지원 - JSON-RPC를 지원 - Cisco Nexus 9000 platform 적용 ◈ NX-API 동작 - HTTP/HTTPS로 전송되며, 해당 CLI는 HTTP/HTTPS의 POST body로 en..
Nexus Ping Drop Issue Nexus Ping Drop 관련 이슈가 예전에 있어서 확인하고 조치하였다가, 네전따 카페에서 다른 분이 동일한 증상이 있어서, 알려드렸었는데 오늘 문득 또 다른 분이 쪽지로 물어오신 김에 아주 짧고 간단하게 정리하고 넘어가봅니다. (그 분도 이 증상이 맞는지 모르겠네요..) Nexus 장비에서 간헐적으로 Ping Loss가 발생하는 경우가 있었습니다. (짧게 정리할 것이기 때문에 각설하고 바로 결론..) Nexus 7K에서는 Control Plane을 보호하기 위해서 CoPP(Control Plane Policing)이 기본적으로 활성화 되어 있습니다. 아래와 같이 내용을 확인할 수 있으며, NX-OS# show run copp control-plane service-policy input copp-s..
JSON((JavaScript Object Notation) JSON(JavaScript Object Notation) ○ JSON 소개 - 경량의 DATA 교환형식 - 읽고/쓰기(사람), 분석[Parse]/생성[generate](기계)하는 데 용이. - 기존 Programming Language로부터 완전히 독립적이지만, 기존 C 계열의 언어와 유사한 형태를 가짐. ○ JSON 구조 - Name/Value의 쌍의 집합(Collection) 형태로 구성 : Object , Record, Struct, Dictionary, Hashtable, List etc.. - 정열된 Value들의 List로 구성 : Arrary, Vector, List, Sequence etc ▶ Object - Name/Value 쌍의 정열되지 않은 Set. - { } (중괄호)로 Obje..
Programmability for Networker : Part 16 (Junos PyEZ:1) PyEZ라는 Junos OS 장비를 다룰 수 있도록 해주는 Python용 micro-framwork라고 하는 Library를 다뤄봅니다. 이번 포스팅에서는 PyEZ가 무엇인지 아주 간단히, 그리고 아주 간단한 예제를 통해서 가볍게 접근해봅니다. Juniper PyEZ Library ○ PyEZ 란? - Junos OS 장비를 원격에서 관리 및 자동화하는 Python으로 만든 'micro-framework' - Junos OS 혹은 , Junos OS XML API에 대한 이해가 복잡하게 필요하지 않음 - 비개발자에게는 원격지의 Junos OS 장비의 자동화 업무 등의 할 수 있도록 하는 간단한 Power Shell 역할을 함. - 개발자에게는 보다 큰 네트워크 인프라의 자동화 관점에서 사용할 수 있는 확..