Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

데이터 수집, 역할Junos OS 모듈을 위한 Ansible 이해

요약 주니퍼 네트웍스 Ansible 모듈을 통해 실행되는 디바이스를 관리하는 데 사용할 Junos OS.

운영되는 디바이스를 관리하기 위한 Ansible 수집, 역할 및 모듈 Junos OS

Ansible은 인프라 구성 관리에 사용되는 IT 자동화 프레임워크입니다. 이기종 코드 단위인 Ansible 모듈을 사용하여 관리 노드에서 특정 기능을 수행할 수 있습니다. 원격 호스트에서 개별 모듈을 실행하여 애드 Hoc 작업을 수행하거나 플레이북을 통해 모듈을 실행할 수 있습니다.

Ansible 및 주니퍼 네트웍스 Ansible 모듈을 통해 운영되는 디바이스를 관리하는 데 Junos OS. 주니퍼 네트웍스 Ansible 모듈은 Ansible 갤럭시 리포지토리에서 호스팅되는 Ansible 역할 및 모음을 통해 그룹화 및 배포됩니다. 표 1은 각기 다른 컨텐트 세트를 간략하게 설명하고 Junos OS.

실행되는 디바이스를 Junos OS
표 1: Ansible Content Set에서

컨텐트 세트

설명

Ansible 릴리스

Ansible 코어 모듈

Ansible 기본 설치에 포함된 Ansible 모듈

Ansible 2.10에서 코어 모듈은 기본 설치에서 Ansible의 모음으로 junipernetworks.junos 이동했습니다.

Ansible 2.1 ~ Ansible 2.9

juniper.device 컬렉션

오픈 소스 프로젝트로 제공 및 관리되는 Junos OS 디바이스 주니퍼 네트웍스 관리하기 위한 수집

Ansible 2.10 이상

Juniper.junos 역할

제공, 유지 관리 및 지원 Junos OS 주니퍼 네트웍스 디바이스를 관리하는 역할.

이 역할은 수집으로 juniper.device 대리됩니다.

Ansible 2.1 이상

junipernetworks.junos 컬렉션

Ansible이 제공, 유지 관리 및 Junos OS 실행하는 디바이스 관리에 대한 수집

Ansible 2.10 이상

Ansible 역할은 호스트 구성을 위한 다양한 작업 및 지원 변수, 파일, 템플릿 및 모듈입니다. Ansible 2.10부터 시작된 Ansible은 Ansible 베이스 설치에 포함되지 않은 Ansible 컨텐트 배포 형식인 Ansible Content Collections를 지원한다. Ansible 모음은 모듈, 플레이북, 플러그인 및 역할을 포함한 광범위한 컨텐츠를 포함할 수 있습니다. 또한 Ansible 모음은 자체 리포지토리를 가지고 있으며, Ansible 기반 설치와 독립적으로 개발 및 릴리스될 수 있습니다.

Ansible 2.9 및 그 이전의 경우, Junos OS 역할에 제공되는 모듈을 사용하거나 Ansible 베이스 주니퍼 네트웍스 코어 모듈을 사용하여 운영되는 디바이스를 관리할 수 Juniper.junos 있습니다. Ansible 2.10부터는 역할과 Ansible 코어 모듈이 해당 모음으로 Juniper.junos 대신됩니다. 주니퍼 네트웍스 모듈이 도입될 때 역할의 모듈은 수집의 새로운 이름에 따라 복제되어 매개 변수를 제외하고 원래 모듈과 동일한 기능 및 매개 변수를 juniper.device Juniper.junos provider 유지하게 됩니다. 역할이 수집과 공존할 수 있으며 나중에 릴리스에서 작동할 수 있기는 하지만, 새로운 기능이 앞으로 수집에 추가될 뿐이기 때문에 이 컬렉션을 Juniper.junos juniper.device 사용하는 것이 juniper.device 좋습니다.

운영되는 장치에서 모듈을 실행하는 Junos OS

Ansible 갤럭시 리포지토리에서 호스팅되는 수집 및 역할을 사용하려면 먼저 Ansible을 제어 노드에 설치한 다음 수집 또는 역할을 설치해야 합니다. 수집 또는 역할 설치에 대한 자세한 내용은 서버 요구 사항에 juniper.device Juniper.junos 대한 Ansible Junos OS 참조하십시오.

Ansible 모듈은 관리 노드에서 작업을 수행할 수 있습니다. 일반적으로 Ansible 제어 노드는 모듈을 관리 노드로 전송하여 실행한 다음 제거합니다. 이 시나리오에서는 관리 노드가 모듈을 실행할 수 있는 기능을 있어야 합니다. 대부분의 Ansible 모듈은 Python으로 작성하기 때문에 Ansible은 일반적으로 관리 노드에서 Python을 필요로 합니다.

그러나 주니퍼 네트웍스 모듈과 역할은 관리 노드에 juniper.device Juniper.junos Python을 요구하지 않습니다. 일반적인 운영과는 반대로, Ansible 컨트롤 노드에서 로컬로 모듈을 실행하면 해당 모듈은 NETCONF에서 Junos PyEZ 및 Junos XML API를 사용하여 관리 노드와 인터페이스합니다. 이 실행 방식에서는 Ansible을 사용하여 실행되는 모든 지원 Junos OS 관리할 수 있습니다. 그림 1은 Ansible 제어 노드와 네트워크에서 실행되는 매니지드 디바이스 간의 통신을 Junos OS.

그림 1: 네트워크에서 실행되는 장치와의 ansible Junos OS Ansible Communication with Devices Running Junos OS

컬렉션이나 역할에서 모듈을 사용하려면 플레이북 또는 juniper.device Juniper.junos 명령어는 다음을 따라야 합니다.

  • 수집 또는 역할 지정—수집 또는 역할을 지정하기 위해 역할의 키 또는 키를 collections roles 포함합니다. 또는 키를 생략할 수 있으며, 권장 방식인 완전 자격을 갖춘 수집 이름(FQCN)을 통해 수집 컨텐트 참조를 할 collections 수 있습니다.

  • 모듈을 제어 노드에서 로컬로 실행합니다. Ansible 모듈을 로컬로 실행하기 위해 예를 들어 플레이북에 포함하거나 명령줄에 포함하도록 매개 변수를 정의할 connection localconnection: local --connection local 있습니다.

    참고:

    Ansible을 사용하면 연결이 필요한 플레이의 각 작업에 대해 장비에 connection: local 대한 별도의 연결을 구축합니다. 또한 수집 모듈은 모듈을 로컬에서 실행하지만, 플레이의 모든 작업에 대한 단일 영구 연결을 장비에 구축하는 기능을 juniper.device connection: juniper.device.pyez 사용합니다.

  • 관리되는 장비에 연결하는 데 적합한 연결 및 인증 정보를 제공합니다. 자세한 정보는 다음을 참조하십시오.

Ansible 모듈은 네트워크에서 실행되는 매니지드 디바이스에 액세스할 수 있는 모든 사용자 계정을 사용하여 Junos OS. Ansible 모듈을 실행하는 경우 Junos OS 사용자 계정 액세스 권한이 적용될 수 있으며 Junos OS 사용자 계정에 대해 구성된 클래스가 권한을 결정하게 됩니다. 따라서 사용자가 구성 변경 사항을 장비에 로드하는 모듈을 실행하는 경우, 사용자가 해당 구성의 관련 부분을 변경할 수 있는 권한을 가야 합니다.

다음 플레이북은 수집 모듈을 실행하여 장비 정보를 검색하고 파일로 juniper.device facts 저장합니다. 이 예에서는 기본 위치의 기존 SSH 키를 사용하여 디바이스에 대한 인증을 실시하기 때문에 플레이북에 명시적으로 증명서를 제공하지 않습니다.

마찬가지로, 다음 플레이북에서는 동일한 작업을 수행하기 위해 역할의 Juniper.junos juniper_junos_facts 모듈을 실행합니다.

또한 명령행에서 애드 Hoc 연산을 수행할 수도 있습니다. 다음 명령어는 수집 모듈을 실행하고 인벤토리 그룹 dc1의 호스트에서 장치 juniper.device facts 정보를 검색합니다.

주니퍼 네트웍스.device Collection

주니퍼 네트웍스 Ansible Galaxy 웹 사이트에서 호스팅되는 juniper.device Ansible Content Collection을 제공합니다. Ansible 모듈을 통해 네트워크에서 실행되는 디바이스를 관리할 수 Junos OS.

표 2에서는 컬렉션의 모듈을 juniper.device 개략적인 것으로 나타 내포하고 있습니다. 수집의 초기 릴리스에서 수집 모듈은 해당 역할의 해당 모듈과 동일한 기능 및 매개변수를 유지하며, 이 매개 변수는 수집 모듈에서 지원되지 Juniper.junos provider 않습니다.

모듈에 대한 가장 최근의 목록, 설명서 및 사용 사례는 에서 https://ansible-juniper-collection.readthedocs.io/en/latest/.

표 2: juniper.device Collection Modules

juniper.device Module 이름

설명

command

실행 CLI 디바이스에서 Junos OS 명령을 실행하고 로컬로 출력을 저장합니다.

config

네트워크에서 실행되는 디바이스 구성을 Junos OS.

facts

Junos OS 버전, 시리얼 번호 및 하드웨어 모델 번호를 포함하여 원격 호스트에서 장비별 정보를 검색합니다.

jsnapy

Ansible의 JSNAPy(Python) 테스트에서 Junos 스냅샷 관리자를 실행합니다.

ping

모든 ping 디바이스에서 실행되는 디바이스에서 Junos OS.

pmtud

디바이스에서 최대 전송 단위(MTU) 경로 검색을 수행하고 Junos OS.

rpc

RPC를 Junos OS 실행합니다.

software

소프트웨어 패키지를 Junos OS 설치하고 디바이스를 다시 Junos OS.

system

장비의 리셋, 재부팅 또는 종료를 Junos OS 실행하는 디바이스에서 시스템 운영을 수행할 수 있습니다.

srx_cluster

클러스터 지원 SRX 시리즈 서비스 게이트웨이를 위한 SRX 시리즈 섀시 Junos OS.

table

Junos PyEZ 운영 테이블 및 보기를 사용하여 디바이스에서 실행되는 디바이스에서 Junos OS.

주니퍼 네트웍스 Juniper.junos 역할

주니퍼 네트웍스 Ansible 갤럭시 웹 사이트에서 호스팅되는 Juniper.junos Ansible 역할을 제공합니다. Ansible Junos OS. Ansible 2.10부터 수집은 그 역할을 대신합니다. juniper.device Juniper.junos 모음의 모듈은 매개 변수를 제외하고 역할의 모듈과 동일한 기능 및 매개 변수를 provider 습니다. 수집 및 역할이 동일한 플랫폼에서 공존할 수 있으며 이후 릴리스에서 계속해서 모듈을 사용할 수 있기는 하지만, 새로운 기능이 앞으로 수집에 추가될 뿐이기 때문에 해당 모듈을 사용하는 것이 Juniper.junos juniper.device 좋습니다.

표 3에는 역할의 모듈이 요약 Juniper.junos 설명하고 있습니다. 모듈에 대한 가장 최근의 목록, 설명서 및 사용 사례는 에서 볼 수 https://junos-ansible-modules.readthedocs.io/en/latest/.

참고:

Juniper.junos릴리스 2.0.0에서 시작하여 역할에는 향상된 모듈 Juniper.junos 세트가 포함됩니다. 각 새로운 모듈은 하나 이상의 기존 모듈의 기능을 대체합니다. 향상된 모듈은 공통의 연결 및 인증 매개 변수 세트, 코어 모듈과 동일한 연결 및 인증 관련 옵션을 지정할 수 있는 별칭, 그리고 제공업체 에지 내에서 매개변수를 지정할 수 있는 기능을 제공합니다.

표 3: Juniper.junos 역할 모듈

모듈 이름

설명

Release 2.0.0을 통해 사용 불가능한 모듈

juniper_junos_command

실행 CLI 디바이스에서 Junos OS 명령을 실행하고 로컬로 출력을 저장합니다.

junos_cli

juniper_junos_config

네트워크에서 실행되는 디바이스 구성을 Junos OS.

junos_commit

junos_get_config

junos_install_config

junos_rollback

juniper_junos_facts

Junos OS 버전, 시리얼 번호 및 하드웨어 모델 번호를 포함하여 원격 호스트에서 장비별 정보를 검색합니다.

junos_get_facts

juniper_junos_jsnapy

Ansible의 JSNAPy(Python) 테스트에서 Junos 스냅샷 관리자를 실행합니다.

junos_jsnapy

juniper_junos_ping

모든 ping 디바이스에서 실행되는 디바이스에서 Junos OS.

junos_ping

juniper_junos_pmtud

디바이스에서 최대 전송 단위(MTU) 경로 검색을 수행하고 Junos OS.

junos_pmtud

juniper_junos_rpc

RPC를 Junos OS 실행합니다.

junos_rpc

juniper_junos_software

소프트웨어 패키지를 Junos OS 설치하고 디바이스를 다시 Junos OS.

junos_install_os

juniper_junos_system

장비의 리셋, 재부팅 또는 종료를 Junos OS 실행하는 디바이스에서 시스템 운영을 수행할 수 있습니다.

junos_shutdown

junos_zeroize

juniper_junos_srx_cluster

클러스터 지원 SRX 시리즈 서비스 게이트웨이를 위한 SRX 시리즈 섀시 Junos OS.

junos_srx_cluster

juniper_junos_table

Junos PyEZ 운영 테이블 및 보기를 사용하여 디바이스에서 실행되는 디바이스에서 Junos OS.

junos_get_table

릴리스 내역 표
릴리스
설명
2.0.0
Juniper.junos Release 2.0에서 시작되는 Juniper.junos 역할에는 향상된 모듈 세트가 포함되어 있습니다.