Junos OS 구성을 정의하는 YANG 모듈 이해하기
주니퍼 네트웍스 YANG 모델을 사용하여 Junos OS 구성 스키마를 게시합니다. Junos OS 릴리스 17.3 및 이전 버전에서는 Junos OS 구성 스키마가 단일 YANG 모듈에 게시됩니다. 릴리스 17.4R1 Junos OS 시작하여 Junos OS 구성 스키마는 여러 소형 모듈로 강화된 루트 구성 모듈을 사용하여 게시됩니다. 이를 통해 스키마의 소비자는 작업에 필요한 모듈만 가져올 수 있습니다.
Junos OS 릴리스 17.4R1부터 Junos OS YANG 모듈은 모듈의 이름, 파일명 및 네임스페이스에 대한 새로운 명명 규칙을 사용합니다. 자세한 내용은 Junos YANG 모듈 이해를 참조하십시오.
루트 구성 모듈은 최상위 구성 노드와 별도의 모듈로 방출되지 않는 모든 노드로 구성됩니다. 별도의 소형 모듈은 다른 구성 문 계층에 대한 루트 구성 모듈을 강화합니다. 루트 모듈을 강화하는 구성 모듈에는 모듈의 이름, 파일명 및 네임스페이스에 표시된 구성 문 계층 수준에 대한 스키마가 포함되어 있습니다.
다음 예는 계층에 대한 YANG 모델을 포함하는 모듈의 [edit interfaces]
일부를 보여줍니다.
/* * Copyright (c) 2017 Juniper Networks, Inc. * All rights reserved. */ module junos-conf-interfaces { namespace "http://yang.juniper.net/junos/conf/interfaces"; prefix jc-interfaces; import junos-common-types { prefix jt; } import junos-conf-root { prefix jc; } organization "Juniper Networks, Inc."; contact "yang-support@juniper.net"; description "Junos interfaces configuration module"; revision 2017-01-01 { description "Junos: 17.4R1.17"; } augment /jc:configuration { uses interfaces-group; } augment /jc:configuration/jc:groups { uses interfaces-group; } ...
YANG 유틸리티는 특정 구성 작업에 필요한 모듈만 가져와야 합니다. 따라서 구성 모듈을 사용하는 도구는 단일 대규모 모듈을 가져올 때보다 모듈에서 다른 기능을 컴파일, 검증 또는 수행하는 데 더 적은 시간이 필요합니다.
구성의 특정 영역에 해당하는 구성 YANG 모듈을 결정하려면 구성 모드 명령을 실행합니다 show | display detail
. 다음 예시에서 계층 수준에 대한 [edit protocols ospf]
스키마는 junos-conf-protocols@2017-01-01.yang 모듈에 포함됩니다.
user@host# show protocols ospf | display detail ## ## ospf: OSPF configuration ## YANG module: junos-conf-protocols@2017-01-01.yang ## lsa-refresh-interval: LSA refresh interval (minutes) ## range: 25 .. 50 ## ## default: 50 ## ...
주니퍼 네트웍스 다운로드 사이트 또는 YANG용 주니퍼 네트웍스 GitHub 리포지토리에서 Junos OS YANG 모듈을 다운로드하거나 로컬 디바이스에서 모듈을 생성할 수 있습니다. 로컬 디바이스에서 구성 모듈을 생성하려면 명령을 실행합니다 show system schema format yang module module
. Junos OS 릴리스는 사용 가능한 명령 옵션을 결정합니다.
-
Junos OS 릴리스 17.3 및 이전 버전에서 모듈을 지정합니다
configuration
.user@host> show system schema format yang module configuration
-
릴리스 17.4 이후 Junos OS 단일 구성 모듈을 반환할 개별 모듈 이름을 지정하거나 모든 구성 모듈을 반환하도록 지정
all-conf
합니다.user@host> show system schema format yang module all-conf output-directory /var/tmp/yang
릴리스 19.1R2 및 19.2R1
show system schema
Junos OS 시작 시 명령은 명령 옵션을 포함하고output-directory
파일 또는 파일을 생성할 디렉터리를 지정해야 합니다. 이전 릴리스에서는 표준 출력에서 모듈을output-directory
표시하도록 단일 모듈을 요청할 때 옵션을 생략할 수 있습니다.
원격 세션에서 모듈을 생성하려면 적절한 옵션으로 Junos OS RPC 또는 <get-schema>
NETCONF(Network Configuration Protocol) 작업을 실행 <get-yang-schema>
합니다.
또는 module all-conf
을(를) 지정 module configuration
하면 출력 파일에는 네이티브 Junos OS 구성 모듈과 디바이스에 추가된 표준 또는 사용자 지정 구성 모듈이 모두 포함됩니다.
릴리스 17.4R1 Junos OS 시작하여 로컬 디바이스에서 생성된 네이티브 YANG 모듈에는 제품군별 스키마가 포함되어 있으며, 이는 해당 디바이스 패밀리의 모든 디바이스에서 동일합니다. 이전 릴리스에서 생성된 모듈에는 디바이스별 스키마가 포함되어 있습니다. 릴리스 17.4R1 이상에서 Junos OS 디바이스별 모듈을 생성하려면 계층 수준에서 구성 문을 [edit system services netconf yang-modules]
구성 device-specific
합니다.
show system schema
Junos OS 시작 시 명령은 명령 옵션을 포함하고
output-directory
파일 또는 파일을 생성할 디렉터리를 지정해야 합니다.