Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SLAX 및 XSLT 스크립트를 사용하여 구성 변경

SLAX 및 XSLT 운영 및 이벤트 스크립트는 jcs:load-configuration 템플릿을 사용하여 Junos OS 구성을 구조화하여 변경할 수 있습니다. Junos OS에 익숙한 숙련된 사용자는 관련 구성 정보를 요청하는 스크립트를 작성하고 그에 따라 구성을 수정할 수 있습니다. 이를 통해 Junos OS 경험이 적은 사용자도 스크립트를 사용하여 구성을 안전하게 수정할 수 있습니다.

이 주제는 템플릿을 사용하여 jcs:load-configuration 구성을 수정하는 방법에 대해 설명합니다.

jcs:load-configuration 템플릿 개요

템플릿은 jcs:load-configuration junos.xsl 가져오기 파일에 포함되어 있습니다. 템플릿은 다음을 수행할 수 있습니다.

  • , load replace또는 load override 작업을 사용해 load mergeJunos XML 구성 데이터를 후보 구성에 로드하고 변경 사항을 커밋합니다

  • 활성 구성을 이전에 커밋된 구성으로 롤백합니다

  • 구조 구성을 로드하고 커밋합니다

호출되면 템플릿은 jcs:load-configuration 대상 디바이스에서 다음 작업을 수행합니다.

  1. 구성 데이터베이스를 잠급니다.

  2. 구성 변경 사항을 로드합니다.

  3. 구성을 커밋합니다.

  4. 구성 데이터베이스의 잠금을 해제합니다.

템플릿은 jcs:load-configuration 모드에서 구성을 configure exclusive 변경합니다. 이 모드에서 Junos OS는 스크립트가 공유 데이터베이스에 액세스하고 구성을 변경하는 한 후보 전역 구성을 잠급니다. 구성 데이터베이스가 이미 잠겨 있거나 템플릿이 호출될 때 후보 구성에 커밋되지 않은 기존 변경 사항이 있는 경우 템플릿 호출이 실패할 수 있습니다. 템플릿이 구성 데이터를 성공적으로 로드하지만 커밋에 실패하면 Junos OS는 데이터베이스가 잠금 해제될 때 커밋되지 않은 변경 사항을 버립니다.

SLAX 템플릿 구문은 다음과 같습니다.

XSLT 템플릿 구문은 다음과 같습니다.

템플릿에 jcs:load-configuration 인수를 제공하여 다음을 지정합니다.

  • 변경할 장치에 대한 연결 핸들

  • 구성에 대한 변경 사항

  • 변경 사항을 기존 구성에 통합하는 방법을 정의하는 로드 작업입니다

  • 선택적 커밋 옵션

템플릿을 호출하기 전에 대상 장치와의 jcs:load-configuration 연결을 설정해야 합니다. 디바이스에 연결하려면 필요한 인수를 jcs:open() 사용하여 함수를 호출합니다. 그런 다음 매개 변수를 함수에서 jcs:open() 반환된 핸들로 설정합니다.jcs:load-configuration connection

다음 샘플 코드는 로컬 디바이스에 연결하고 구성을 수정합니다.

템플릿을 호출 jcs:load-configuration 할 때 매개 변수를 포함하여 configuration 디바이스의 새 구성 데이터를 로드하거나, 매개 변수를 지정 rollback 하여 구성을 이전에 커밋한 구성으로 되돌리거나, 매개 변수를 지정 rescue 하여 구조 구성을 로드하고 커밋할 수 있습니다.

구성 데이터 로드 및 커밋

SLAX 및 XSLT 스크립트는 jcs:load-configuration 템플릿을 호출하여 구성을 수정할 수 있습니다. configuration 이 매개 변수는 로드할 Junos XML 구성 데이터를 정의하고 action , 이 매개 변수는 데이터를 로드하는 방법을 지정합니다. 이 commit-options 매개 변수는 커밋 작업 중에 사용할 옵션을 정의합니다.

다음 샘플 op 스크립트는 jcs:load-configuration 템플릿을 호출하여 구성을 수정하여 인터페이스를 비활성화합니다. 템플릿에 jcs:load-configuration 필요한 모든 값은 변수로 정의되며, 이 변수는 템플릿에 인수로 전달됩니다.

연산자는 := 템플릿 호출의 jcs:load-configuration 결과를 임시 변수에 복사하고 해당 변수에서 함수를 실행합니다 node-set . 연산자는 := 스크립트가 내용에 액세스할 수 있도록 변수가 결과 트리 조각이 아닌 노드 집합인지 확인합니다 disable-results .

SLAX 구문:

이 스크립트에 대한 자세한 내용은 예: SLAX 및 XSLT Op 스크립트를 사용하여 구성 변경을 참조하십시오.

템플릿 호출에 해당하는 XSLT 코드는 다음과 같습니다.jcs:load-configuration

복구 구성 로드 및 커밋

복구 구성을 사용하면 알려진 작업 구성 또는 언제든지 복원할 수 있는 알려진 상태의 구성을 정의할 수 있습니다. SLAX 및 XSLT 스크립트는 jcs:load-configuration 매개 변수가 있는 rescue 템플릿을 호출하여 구조 구성(있는 경우)을 로드할 수 있습니다.

다음 SLAX op 스크립트는 기존 구조 구성을 로드하고 커밋합니다.

해당하는 XSLT 스크립트는 다음과 같습니다.

구성 롤백

SLAX 및 XSLT 스크립트는 jcs:load-configuration rollback 매개 변수를 사용하여 템플릿을 호출하여 구성을 이전에 커밋된 구성으로 되돌릴 수 있습니다. 다음 SLAX op 스크립트는 롤백 번호를 프롬프트한 다음 요청된 롤백 구성을 로드하고 커밋합니다.