Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Junos 디바이스에서 YANG 패키지, 모듈 및 스크립트 관리

요약 Junos 디바이스에 맞춤형 YANG 패키지를 로드하여 자체 RPC(Remote Procedure Call) 및 데이터 모델을 장비에 추가합니다.

사용자 지정 YANG 모듈을 Junos 디바이스에 로드하여 OS에서 기본적으로 지원되지는 않지만 변환을 통해 지원될 수 있는 RPC 및 데이터 모델을 추가할 수 있습니다. 비논의적 YANG 데이터 모델을 디바이스에 로드할 때는 이러한 데이터 모델에서 요구하는 변환 스크립트, 작업 스크립트 및 편차 모듈도 로드해야 합니다.

참고:

Junos OS 릴리스 17.3R1부터 사용자 지정 YANG 데이터 모델을 디바이스에 로드할 때 필요한 Junos OS 확장 모듈을 명시적으로 로드할 필요가 없습니다. 이전 릴리스에서는 모듈을 사용하는 모든 패키지에 대해 Junos OS 확장 모듈을 로드해야 합니다.

Junos 장비는 패키지를 사용하여 관련 YANG 모듈, 번역 스크립트 및 작업 스크립트의 모음을 식별합니다. 각 패키지에는 고유 식별자가 있습니다. YANG 모듈 및 스크립트를 디바이스에 추가할 경우 새 또는 기존 패키지와 연결해야 합니다. 이 주제는 YANG 패키지를 생성, 업데이트 및 삭제하고 관련 모듈 및 스크립트를 추가 또는 업데이트하는 방법에 대해 설명합니다.

참고:

CLI 관련 또는 구성 데이터베이스 오류를 방지하기 위해 디바이스가 YANG 패키지를 추가, 업데이트 또는 삭제하고 스키마를 수정하는 동안 CLI 작업을 수행하거나 구성을 변경하거나 작업을 종료하지 않는 것이 좋습니다.

YANG 패키지 생성 및 모듈 및 스크립트 추가

YANG 모듈 및 스크립트를 검증하고 새 패키지에 추가하려면 다음을 수행합니다.

  1. 장비의 디렉토리에 YANG 모듈과 필요한 스크립트를 다운로드하십시오.
  2. 서명되지 않은 Python 작업 스크립트가 Junos OS super-user 로그인 클래스의 루트 또는 사용자가 소유하고 파일 소유자만이 파일에 대한 쓰기 권한을 가지고 있는지 확인합니다.
    참고:

    사용자는 스크립트의 파일 권한에 사용자, 그룹 또는 기타 순서로 사용자가 속한 첫 번째 클래스에 대한 읽기 권한을 포함하는 경우에만 Junos 장치에서 서명되지 않은 Python 스크립트를 실행할 수 있습니다.

  3. (옵션) 모듈 및 스크립트의 구문을 검증합니다.
  4. 고유 식별자가 있는 YANG 패키지를 생성하고 해당 패키지의 일부인 모듈 및 스크립트는 물론 해당 패키지의 모듈 편차를 식별하는 편차 모듈의 파일 경로를 지정합니다.
    참고:

    단일 파일에 대한 절대 또는 상대적 경로를 지정하거나, 각괄호로 둘러싸인 공간 구분 파일 경로 목록을 지정하여 여러 파일을 추가할 수 있습니다.

    참고:

    압축 타르 파일로 패키지된 OpenConfig 모듈을 설치하려면 이 request system software add 명령을 사용합니다. 명령을 발행 request system software add 하여 설치되는 OpenConfig 모듈 및 스크립트는 항상 패키지 식별자와 openconfig연결됩니다.

    참고:

    Junos OS 릴리스 18.3R1부터 시작해 명령어와 함께 run 구성 모드에서 YANG 패키지를 추가, 삭제 또는 업데이트하는 일은 지원되지 않습니다.

  5. 시스템에서 Junos OS CLI를 다시 시작하라는 메시지가 표시되면 를 눌러 Enter 기본값 yes을 적용합니다.
  6. 패키지가 만들어졌으며 올바른 모듈과 스크립트가 포함되어 있는지 확인합니다.
  7. 패키지에 Python으로 작성된 번역 스크립트 또는 작업 스크립트가 포함되어 있는 경우 장비가 Junos OS 릴리스에 적합한 명령문 또는 language python3 명령문을 구성 language python 하여 서명되지 않은 Python 스크립트를 실행할 수 있도록 합니다.
    참고:

    Junos OS 릴리스 20.2R1 및 Junos OS Evolved Release 22.3R1부터 이 디바이스는 Python 3을 사용하여 YANG 작업 및 변환 스크립트를 실행합니다. 이전 릴리스에서 Junos OS는 Python 2.7만 사용하여 이러한 스크립트를 실행하며, Junos OS Evolved는 기본적으로 Python 2.7을 사용하여 스크립트를 실행합니다.

  8. 멀티섀시 시스템에서는 시스템의 각 노드에서 1 단계부터 7 단계까지 반복합니다.

새 패키지를 만들면 장치는 모듈 및 스크립트 파일의 복사본을 새 위치에 저장합니다. 또한 이 장치는 작업 스크립트 및 번역 스크립트 파일의 복사본을 /var/db/scripts/action/var/db/scripts/translation directories에 각각 저장합니다. 모듈과 스크립트가 검증되고 디바이스에 추가된 후, Junos OS는 스키마를 재구축하여 새로운 데이터 모델을 포함하도록 한 다음 이 스키마에 대해 활성 구성을 검증합니다. 새로 추가된 RPC 및 구성 계층을 즉시 사용할 수 있습니다.

참고:

임시 구성 데이터베이스를 사용하는 디바이스는 스키마를 재구축하는 과정에서 모든 임시 구성 데이터를 삭제합니다.

참고:

Junos OS는 타사 YANG 데이터 모델(예: OpenConfig 또는 맞춤형 YANG 데이터 모델)에 해당하는 명령문을 구성하는 모드를 configure private 지원하지 않습니다.

신규 또는 수정된 모듈 및 스크립트로 YANG 패키지 업데이트

명령을 실행하여 새 YANG 패키지를 만듭니다 request system yang add . 패키지에 새 모듈 및 스크립트를 추가하거나 패키지의 기존 모듈 및 스크립트를 업데이트하기 위해 기존 패키지를 업데이트하려면 해당 명령을 사용해야 request system yang update 합니다.

새 또는 수정된 모듈 및 스크립트로 YANG 패키지를 업데이트하려면 다음을 수행합니다.

  1. 모듈 및 스크립트를 장비의 모든 디렉토리로 다운로드하십시오.
  2. 서명되지 않은 Python 작업 스크립트가 Junos OS super-user 로그인 클래스의 루트 또는 사용자가 소유하고 파일 소유자만이 파일에 대한 쓰기 권한을 가지고 있는지 확인합니다.
    참고:

    사용자는 스크립트의 파일 권한에 사용자, 그룹 또는 기타 순서로 사용자가 속한 첫 번째 클래스에 대한 읽기 권한을 포함하는 경우에만 Junos 장치에서 서명되지 않은 Python 스크립트를 실행할 수 있습니다.

  3. (옵션) 모듈 및 스크립트의 구문을 검증합니다.
  4. 명령을 발행하여 request system yang update YANG 패키지를 업데이트하고 새로 수정된 모듈 및 스크립트의 파일 경로를 지정합니다.
    참고:

    단일 파일에 대한 절대 또는 상대적 경로를 지정하거나, 각괄호로 둘러싸인 공간 구분 파일 경로 목록을 지정하여 여러 파일을 업데이트할 수 있습니다.

    참고:

    Junos OS 릴리스 18.3R1부터 시작해 명령어와 함께 run 구성 모드에서 YANG 패키지를 추가, 삭제 또는 업데이트하는 일은 지원되지 않습니다.

  5. 시스템에서 Junos OS CLI를 다시 시작하라는 메시지가 표시되면 를 눌러 Enter 기본값 yes을 적용합니다.
  6. 패키지에 Python으로 작성된 번역 스크립트 또는 작업 스크립트가 포함되어 있는 경우, 아직 구성되지 않은 경우 Junos OS 릴리스에 맞게 서명되지 않은 Python 스크립트를 language python3 구성 language python 하여 장비가 서명되지 않은 Python 스크립트를 실행할 수 있도록 합니다.
    참고:

    Junos OS 릴리스 20.2R1 및 Junos OS Evolved Release 22.3R1부터 이 디바이스는 Python 3을 사용하여 YANG 작업 및 변환 스크립트를 실행합니다. 이전 릴리스에서 Junos OS는 Python 2.7만 사용하여 이러한 스크립트를 실행하며, Junos OS Evolved는 기본적으로 Python 2.7을 사용하여 스크립트를 실행합니다.

  7. 멀티섀시 시스템에서는 시스템의 각 노드에서 1 단계부터 6 단계까지 반복합니다.

패키지를 업데이트하면 장치는 새로 수정된 모듈 및 스크립트 파일의 복사본을 저장합니다. 그런 다음 Junos OS는 스키마를 재구축하여 해당 패키지와 관련된 데이터 모델에 대한 변경 사항을 포함시키고 이 스키마에 대한 활성 구성을 검증합니다.

참고:

임시 구성 데이터베이스를 사용하는 디바이스는 스키마를 재구축하는 과정에서 모든 임시 구성 데이터를 삭제합니다.

YANG 패키지 삭제

주의:

Junos 디바이스에서 YANG 패키지를 삭제하기 전에 활성 구성에 해당 패키지에 추가된 데이터 모델에 대한 구성 데이터가 포함되지 않도록 해야 합니다.

JUNOS 장비에서 YANG 패키지와 해당 패키지와 관련된 모든 모듈 및 스크립트를 삭제하려면 다음을 수행합니다.

  1. 활성 구성을 검토하여 삭제될 YANG 모듈에 종속성이 있는지 확인합니다.
  2. 구성에 모듈에 종속성이 포함되어 있는 경우 구성을 업데이트하여 종속성을 제거합니다.
  3. 적절한 패키지 식별자를 가진 명령을 실행하여 request system yang delete 패키지 및 관련 모듈 및 스크립트를 삭제합니다.
    참고:

    명령을 실행 request system software add 하여 압축 타르 파일에서 설치된 OpenConfig 패키지를 제거해야 합니다request system software delete.

    참고:

    Junos OS 릴리스 18.3R1부터 시작해 명령어와 함께 run 구성 모드에서 YANG 패키지를 추가, 삭제 또는 업데이트하는 일은 지원되지 않습니다.

  4. 시스템에서 Junos OS CLI를 다시 시작하라는 메시지가 표시되면 를 눌러 Enter 기본값 yes을 적용합니다.

패키지를 삭제하면 Junos OS는 스키마를 재구축하여 해당 패키지와 연관된 데이터 모델을 제거한 다음 이 스키마에 대한 활성 구성을 검증합니다. 장비는 패키지를 만들 때 생성된 모듈 및 스크립트 파일의 복사본을 제거합니다. 또한 장비는 /var/db/scripts/action 및 /var/db/scripts /translation directories에 저장된 패키지의 작업 스크립트 및 번역 스크립트 파일의 복사본을 제거합니다. 원본 모듈 및 스크립트 파일을 다른 위치에 다운로드한 경우 원본 파일은 변경되지 않습니다.

참고:

임시 구성 데이터베이스를 사용하는 디바이스는 스키마를 재구축하는 과정에서 모든 임시 구성 데이터를 삭제합니다.

릴리스 히스토리 테이블
릴리스
설명
22.3R1-EVO
Junos OS Evolved Release 22.3R1부터, Junos OS Evolved는 Python 3을 사용하여 YANG 작업 및 변환 스크립트를 실행합니다.
20.2R1
Junos OS 릴리스 20.2R1부터 Junos OS는 Python 3을 사용하여 YANG 작업 및 변환 스크립트를 실행합니다. 이전 릴리스에서 Junos OS는 Python 2.7을 사용하여 이러한 스크립트를 실행합니다.
18.3R1
Junos OS 릴리스 18.3R1부터 시작해 명령어와 함께 run 구성 모드에서 YANG 패키지를 추가, 삭제 또는 업데이트하는 일은 지원되지 않습니다.
17.3R1
Junos OS 릴리스 17.3R1부터 사용자 지정 YANG 데이터 모델을 디바이스에 로드할 때 필요한 Junos OS 확장 모듈을 명시적으로 로드할 필요가 없습니다.