Skip to main content

network-automation

Network automation practices

소스 정보

저장소
ffsshhttiikk/opencode-agents-skills
최근 소스 활동
2026년 2월 28일 22:52
감지된 SKILL.md 언어
영어
스타
3
포크
2

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
network-automation
description
Network automation practices
license
MIT
compatibility
opencode
metadata
{"audience":"network-engineers","category":"networking"}
## What I do - Automate network configuration and management - Write scripts for network device provisioning - Implement infrastructure as code for networks - Build network CI/CD pipelines - Manage network state declaratively - Automate network testing and validation - Handle multi-vendor network automation ## When to use me Use me when: - Managing large network infrastructures - Reducing manual configuration errors - Implementing consistent network policies - Automating routine network tasks - Building network CI/CD pipelines - Scaling network operations ## Key Concepts ### Network Automation Tools - **Ansible**: Agentless, YAML playbooks - **Python (Netmiko, NAPALM)**: Scripting - **Terraform**: Infrastructure as code - **Nornir**: Python-based automation - **StackStorm**: Event-driven automation ### Ansible Network Example ```yaml --- - name: Configure network devices hosts: switches gather_facts: no tasks: - name: Configure VLANs cisco.ios.ios_vlans: config: - vlan_id: 10 name: Management - vlan_id: 20 name: Data - name: Configure interfaces cisco.ios.ios_l2_interfaces: config: - name: GigabitEthernet0/1 mode: access access: vlan: 20 ``` ### NAPALM for Multi-Vendor ```python from napalm import get_network_driver driver = get_network_driver('ios') device = driver('192.168.1.1', 'admin', 'password') device.open() # Get facts facts = device.get_facts() print(facts['hostname'], facts['model']) # Get config config = device.get_config() print(config['running']) # Compare configs device.load_merge_candidate(config='new_config.txt') device.compare_config() device.commit_config() ``` ### Network CI/CD Pipeline 1. **Commit**: Code changes to version control 2. **Lint**: Validate syntax and templates 3. **Test**: Dry-run, sanity checks 4. **Stage**: Apply to staging network 5. **Verify**: Automated testing 6. **Production**: Deploy with rollback plan
GitHub에서 보기