이벤트 정책을 구성하여 구성 변경
이벤트에 대한 응답으로 구성을 수정하기 위해 명령문을 사용하는 change-configuration 이벤트 정책 작업을 구성할 수 있습니다.
이벤트 정책은 특정 이벤트에 응답하여 작업을 수행합니다. 특정 이벤트 또는 상관 이벤트를 수신하는 이벤트 정책을 구성한 다음 구성을 수정할 수 있습니다. 예를 들어, 주어진 인터페이스에 대한 SNMP_TRAP_LINK_DOWN 또는 SNMP_TRAP_LINK_UP 이벤트를 수신하면 이벤트 정책은 고정 경로의 구성을 수정하여 메트릭을 조정하거나 다음 홉을 수정할 수 있습니다.
이벤트 정책은 다음 방법을 사용하여 구성을 수정할 수 있습니다.
-
구성을 변경하고 커밋하는 이벤트 스크립트 호출.
-
이벤트 정책 작업을 사용합니다
change-configuration. 이 작업은 구성 모드 명령을 실행하여 구성을 수정한 다음 구성을 커밋합니다.
이 주제에서는 문 계층을 change-configuration 사용하여 구성을 업데이트하는 방법에 대해 설명합니다. 이벤트 스크립트를 사용하여 구성을 변경하는 방법에 대한 자세한 내용은 이벤트 스크립트를 사용하여 구성 변경을 참조하십시오.
NSR(Nonstop Active Routing)이 활성화된 이중 라우팅 엔진 디바이스의 구성을 수정하기 위해 문을 change-configuration 사용하는 것은 권장되지 않습니다. 이 경우 두 라우팅 엔진 모두 구성 데이터베이스에 대한 잠금을 획득하려고 시도할 수 있으며, 이로 인해 커밋이 실패할 수 있습니다. NSR 지원 디바이스에서 이벤트 정책을 통해 구성을 수정하려면 기본 라우팅 엔진에서만 커밋을 실행하는 이벤트 스크립트를 호출합니다.
이벤트 정책 change-configuration 작업을 사용하여 구성 변경
구성 모드 명령을 사용하여 구성을 수정하는 이벤트 정책을 생성하려면 계층 수준에서 [edit event-options policy policy-name then] 문을 구성 change-configuration 합니다. 예를 들면 다음과 같습니다.
[edit event-options policy policy-name then]
change-configuration {
commands {
"set routing-options static route 198.51.100.0/24 next-hop 10.1.3.1";
}
}
commands 이 문은 구성된 이벤트를 수신할 때 이벤트 정책이 실행하는 구성 모드 명령을 지정합니다. 각 명령을 따옴표(" ")로 묶습니다. 계층 수준에서 [edit] 명령을 실행할 때 구성 모드에서와 같이 요소, 식별자 또는 값에 대한 전체 문 경로를 지정합니다. 명령문은 commands 다음 구성 모드 명령을 허용합니다.
-
activate -
deactivate -
delete -
set
이벤트 프로세스(eventd)는 명령이 이벤트 정책 구성에 나타나는 순서대로 명령을 실행합니다. 이 명령은 후보 구성을 업데이트하며, 커밋 오류가 발생하지 않는 경우 커밋됩니다. 기본적으로 이벤트 정책은 구성 변경 및 커밋 작업을 사용자로 실행합니다. root 특정 사용자의 권한으로 이러한 작업을 실행하려면 문을 구성 user-name 하고 사용자를 지정합니다.
특정 시나리오에서 구성 변경 작업이 실패할 수 있습니다(예: 구성에 대한 잠금을 획득할 수 없는 경우). 첫 번째 시도가 실패할 경우 시스템이 지정된 횟수만큼 구성 변경 작업을 시도하도록 문을 구성 retry 합니다.
또한 child 문을 구성 commit-options 하여 이벤트 정책 커밋 작업을 사용자 지정할 수 있습니다. 표 1 에는 옵션이 요약되어 있습니다.
| 옵션 | 설명 |
|---|---|
check |
변경 사항을 커밋하지 않고 후보 구성 구문을 확인합니다. |
check synchronize |
변경 사항을 커밋하지 않고 두 라우팅 엔진 모두에서 후보 구성 구문을 확인합니다. |
force |
후보 구성에 커밋되지 않은 변경 사항이 포함되어 있더라도 경고를 무시하고 다른 라우팅 엔진에서 커밋을 강제합니다. |
log |
커밋 코멘트를 기록합니다. |
synchronize |
두 라우팅 엔진에서 커밋을 동기화합니다. |
예를 들어 이벤트 정책을 테스트하거나 문제를 해결하는 경우 변경 사항을 커밋하지 않고 후보 구성 구문을 확인하도록 commit 옵션을 구성할 check 수 있습니다. 이중 컨트롤 플레인 시스템에서 문을 check synchronize 구성할 수 있습니다. 시스템은 하나의 컨트롤 플레인에서 후보 구성을 다른 컨트롤 플레인으로 복사한 다음 두 후보 구성이 구문적으로 올바른지 확인합니다. 명령문과 check 다른 명령 commit-options 문은 상호 배타적입니다.
단일 라우팅 엔진에서 변경 사항을 커밋하거나 두 라우팅 엔진에서 커밋을 동기화하는 옵션을 구성할 synchronize 수 있습니다. 옵션을 구성할 synchronize 때 요청하는 라우팅 엔진은 후보 구성을 복사하여 다른 라우팅 엔진에 로드합니다. 두 라우팅 엔진 모두 후보 구성 파일에 대한 구문 검사를 수행합니다. 오류가 없으면 구성이 활성화되고 두 라우팅 엔진 모두에서 현재 운영 구성이 됩니다. 기본적으로 synchronize 응답하는 라우팅 엔진에 커밋되지 않은 구성 변경 사항이 있는 경우 옵션이 실패합니다. 그러나 옵션을 구성 force 하여 라우팅 엔진에 커밋 동기화를 적용하고 경고를 무시할 수 있습니다.
다음 구성은 지정된 구성 모드 명령을 실행한 다음 두 라우팅 엔진에서 구성을 커밋합니다. 명령문은 log 구성된 커밋 코멘트를 기록합니다.
[edit event-options policy policy-name then]
change-configuration {
commands {
"set routing-options static route 198.51.100.0/24 next-hop 10.1.3.1";
}
commit-options {
force;
log "event policy change to static route";
synchronize;
}
}
예: 이벤트 정책을 사용하여 구성 변경
특정 이벤트에 대한 응답으로 구성을 수정해야 할 수도 있습니다. 이벤트 정책이 하나 이상의 특정 이벤트에 의해 트리거될 때 구성을 변경하고 커밋하도록 이벤트 정책을 구성할 수 있습니다.
이 예는 특정 인터페이스에 대한 SNMP_TRAP_LINK_DOWN 이벤트를 시뮬레이션합니다. 이벤트가 수신되면 이벤트 정책은 작업을 사용하여 change-configuration 구성을 수정합니다. 이벤트 정책은 다른 exit 인터페이스를 통해 새로운 다음 홉 IP 주소를 사용하도록 정적 경로의 구성을 업데이트합니다.
요구 사항
-
Junos OS를 실행하는 디바이스 또는 Junos OS Evolved를 실행하는 디바이스.
개요
이벤트 정책 작업을 구성하여 구성을 수정할 수 있습니다. exit 인터페이스 ge-0/2/1을 통해 다음 홉 IP 주소 10.1.2.1을 가진 10.1.10.0/24 네트워크에 대한 정적 경로가 있다고 가정해 보겠습니다. 어느 시점에서 이 인터페이스가 다운되어 SNMP_TRAP_LINK_DOWN 이벤트가 트리거됩니다.
이 예에서는 update-on-snmp-trap-link-down이라는 이벤트 정책을 생성합니다. eventd 프로세스가 인터페이스 ge-0/2/1.0과 관련된 SNMP_TRAP_LINK_DOWN 이벤트를 수신하도록 이벤트 정책을 구성합니다. 인터페이스가 다운되면 이벤트 정책은 다음 구성 변경과 함께 구성 변경 작업을 실행합니다.
-
ge-0/2/1 exit 인터페이스를 통해 정적 경로를 제거합니다
-
종료 인터페이스 ge-0/3/1을 통해 다음 홉 IP 주소 10.1.3.1로 동일한 대상 네트워크에 대한 새 고정 경로를 생성합니다
이벤트 정책은 사용자 관리자의 권한에 따라 작업을 실행합니다. 또한 이벤트 정책은 변경이 연관된 이벤트 정책을 통해 이루어졌음을 지정하는 커밋 코멘트를 기록합니다. 이벤트 정책은 재시도 횟수 5와 재시도 간격 4초를 사용합니다. 초기 구성 변경 시도가 실패하면 시스템은 추가로 5회 변경을 시도하고 각 시도 사이에 4초 동안 대기합니다.
여기에 제시되지는 않지만, 인터페이스가 다시 작동할 때 고정 경로를 업데이트하기 위해 구성 변경 작업을 실행하는 유사한 두 번째 이벤트 정책이 있을 수 있습니다. 이 경우 정책은 동일한 인터페이스에 대한 SNMP_TRAP_LINK_UP 이벤트에서 트리거됩니다.
구성
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하고, 텍스트 파일에 명령을 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 [edit] 명령을 복사하여 CLI에 붙여 넣습니다.
set event-options policy update-on-snmp-trap-link-down events snmp_trap_link_down set event-options policy update-on-snmp-trap-link-down attributes-match snmp_trap_link_down.interface-name matches ge-0/2/1.0 set event-options policy update-on-snmp-trap-link-down then change-configuration retry count 5 set event-options policy update-on-snmp-trap-link-down then change-configuration retry interval 4 set event-options policy update-on-snmp-trap-link-down then change-configuration commands "delete routing-options static route 10.1.10.0/24 next-hop" set event-options policy update-on-snmp-trap-link-down then change-configuration commands "set routing-options static route 10.1.10.0/24 next-hop 10.1.3.1" set event-options policy update-on-snmp-trap-link-down then change-configuration user-name admin set event-options policy update-on-snmp-trap-link-down then change-configuration commit-options log "updating configuration from event policy update-on-snmp-trap-link-down" set routing-options static route 10.1.10.0/24 next-hop 10.1.2.1 set system syslog file syslog-event-daemon-warning daemon warning
이벤트 정책 구성
단계별 절차
-
이벤트 정책을 만들고 이름을 지정합니다.
[edit] admin@R1# edit event-options policy update-on-snmp-trap-link-down
-
이벤트 정책이 SNMP_TRAP_LINK_DOWN 이벤트에서 트리거되도록 문을 구성
events합니다.ge-0/2/1.0 인터페이스에 대해 SNMP_TRAP_LINK_DOWN 이벤트가 발생할 때만 정책이 트리거되도록 명령문을 설정합니다
attributes-match.[edit event-options policy update-on-snmp-trap-link-down] admin@R1# set events snmp_trap_link_down admin@R1# set attributes-match snmp_trap_link_down.interface-name matches ge-0/2/1.0
-
이벤트 정책이 트리거될 경우 실행할 구성 모드 명령을 지정합니다.
각 명령을 한 줄로 구성하고, 명령 문자열을 따옴표로 묶고, 전체 문 경로를 지정합니다.
[edit event-options policy update-on-snmp-trap-link-down then change-configuration] admin@R1# set commands "delete routing-options static route 10.1.10.0/24 next-hop" admin@R1# set commands "set routing-options static route 10.1.10.0/24 next-hop 10.1.3.1"
-
(선택 사항) 구성 변경을 설명하는 코멘트를 사용하여 옵션을 구성
log합니다. 코멘트는 연관된 이벤트 정책을 통해 성공적인 커밋 작업이 수행된 후 커밋 로그에 추가됩니다.[edit event-options policy update-on-snmp-trap-link-down then change-configuration] admin@R1# set commit-options log "updating configuration from event policy update-on-snmp-trap-link-down"
-
(선택 사항) 이중 라우팅 엔진이 있는 경우 두 라우팅 엔진에서 구성을 커밋하는 옵션을 구성
synchronize합니다. 모든 경고를 무시하고 다른 라우팅 엔진에서 커밋을 강제하는 옵션을 포함force합니다. 이 예에서는 andforce옵션을 구성하지 않습니다.synchronize -
(선택 사항) 재시도 횟수 및 재시도 간격을 구성합니다.
이 예에서 은(는)
count5로 설정되고 은interval(는) 4초입니다.[edit event-options policy update-on-snmp-trap-link-down then change-configuration] admin@R1# set retry count 5 interval 4
-
(선택 사항) 구성 변경 및 커밋이 이루어지는 권한에 따라 사용자 이름을 구성합니다.
사용자 이름을 지정하지 않으면 작업이 사용자 루트로 실행됩니다.
[edit event-options policy update-on-snmp-trap-link-down then change-configuration] admin@R1# set user-name admin
-
시설
daemon및 심각도warning의 syslog 이벤트를 기록하도록 계층 수준에서[edit system syslog]새 로그 파일을 구성합니다.이 로그는 SNMP_TRAP_LINK_DOWN 이벤트를 캡처합니다.
[edit system syslog] admin@R1# set file syslog-event-daemon-warning daemon warning
-
이 예를 테스트하기 위해 다음 홉 IP 주소가 10.1.2.1인 10.1.10.0/24 네트워크에 대한 고정 경로를 구성합니다.
[edit] admin@R1# set routing-options static route 10.1.10.0/24 next-hop 10.1.2.1
-
구성을 커밋합니다.
admin@R1# commit
-
ge-0/2/1 인터페이스를 비활성화하기 전에 구성의 계층 수준을 검토
[edit routing-options static]하고 다음 홉 IP 주소를 확인합니다.admin@R1> show configuration routing-options static ... route 10.1.10.0/24 next-hop 10.1.2.1; ...
-
이벤트 정책을 수동으로 테스트하려면 ge-0/2/1 인터페이스를 일시적으로 오프라인으로 전환하여 SNMP_TRAP_LINK_DOWN 이벤트를 생성합니다.
[edit] admin@R1# set interfaces ge-0/2/1 disable admin@R1# commit
결과
[edit]
event-options {
policy update-on-snmp-trap-link-down {
events snmp_trap_link_down;
attributes-match {
snmp_trap_link_down.interface-name matches ge-0/2/1.0;
}
then {
change-configuration {
retry count 5 interval 4;
commands {
"delete routing-options static route 10.1.10.0/24 next-hop";
"set routing-options static route 10.1.10.0/24 next-hop 10.1.3.1";
}
user-name admin;
commit-options {
log "updating configuration from event policy update-on-snmp-trap-link-down";
}
}
}
}
}
routing-options {
static {
route 10.1.10.0/24 next-hop 10.1.2.1;
}
}
system {
syslog {
file syslog-event-daemon-warning {
daemon warning;
}
}
}
검증
구성이 제대로 작동하고 있는지 확인합니다.
인터페이스의 상태 확인
목적
ge-0/2/1 인터페이스가 다운되었고 SNMP_TRAP_LINK_DOWN 이벤트를 트리거했는지 확인합니다.
작업
운영 모드 명령을 실행합니다 show interfaces ge-0/2/1 . 명령 출력은 인터페이스가 관리상 오프라인 상태임을 보여줍니다.
admin@R1> show interfaces ge-0/2/1 Physical interface: ge-0/2/1, Administratively down, Physical link is Down <output omitted>
8단계에서 구성된 시스템 로그 파일의 내용을 검토합니다. 출력은 ge-0/2/1.0 인터페이스가 SNMP_TRAP_LINK_DOWN 이벤트를 생성했음을 보여줍니다.
admin@R1> show log syslog-event-daemon-warning Oct 10 18:00:57 R1 mib2d[1371]: SNMP_TRAP_LINK_DOWN: ifIndex 531, ifAdminStatus down(2), ifOperStatus down(2), ifName ge-0/2/1.0
커밋 확인
목적
커밋 로그 및 메시지 로그 파일을 검토하여 이벤트 정책 커밋 작업이 성공했는지 확인합니다.
작업
운영 모드 명령을 실행 show system commit 하여 커밋 로그를 확인합니다. 이 예에서 로그는 구성이 지정된 날짜와 시간에 사용자 admin의 권한에 따라 이벤트 정책을 통해 커밋되었음을 확인합니다.
admin@R1> show system commit
0 2011-10-10 18:01:03 PDT by admin via junoscript
updating configuration from event policy update-on-snmp-trap-link-down
1 2011-09-02 14:16:44 PDT by admin via netconf
2 2011-07-08 14:33:46 PDT by root via other
메시지 로그 파일을 검토합니다. SNMP_TRAP_LINK_DOWN 이벤트를 수신하면 Junos OS 구성된 이벤트 정책 작업을 실행하여 구성을 수정하고 커밋했습니다. 커밋 작업은 사용자 admin 권한으로 발생했습니다.
admin@R1> show log messages | last 20 ... Oct 10 18:00:57 R1 mib2d[1371]: SNMP_TRAP_LINK_DOWN: ifIndex 531, ifAdminStatus down(2), ifOperStatus down(2), ifName ge-0/2/1.0 Oct 10 18:00:59 R1 file[17575]: UI_COMMIT: User 'admin' requested 'commit' operation (comment: updating configuration from event policy update-on-snmp-trap-link-down) Oct 10 18:01:03 R1 eventd: EVENTD_CONFIG_CHANGE_SUCCESS: Configuration change successful: while executing policy update-on-snmp-trap-link-down with user admin privileges
다른 로그 파일을 구성하는 경우 구성과 관련된 파일을 검토합니다.
의미
운영 모드 명령 및 메시지 로그 파일의 출력 show system commit 은 사용자 관리자의 권한에 따라 이벤트 정책을 통해 수행된 커밋 작업이 성공했는지 확인합니다. show system commit 출력 및 메시지 로그 파일은 구성된 커밋 옵션에 지정된 커밋 코멘트를 참조합니다.
구성 변경 사항 확인
목적
ge-0/2/1 인터페이스를 비활성화한 후 구성의 계층 수준을 검토 [edit routing-options static] 하여 구성 변경 사항을 확인합니다.
작업
다음 운영 모드 명령을 실행합니다.
admin@R1> show configuration routing-options static ... route 10.1.10.0/24 next-hop 10.1.3.1; ...
의미
이벤트 정책은 새 IP 주소 10.1.3.1을 사용하도록 구성된 다음 홉을 수정했습니다. 새 IP 주소의 종료 인터페이스는 ge-0/3/1입니다.
문제 해결
커밋 오류 문제 해결
문제
트리거된 이벤트 정책은 지정된 구성을 변경하지 않으며, 로그는 커밋이 실패했음을 확인합니다.
admin@R1> show log messages | last 20 ... Oct 10 17:48:59 R1 mib2d[1371]: SNMP_TRAP_LINK_DOWN: ifIndex 531, ifAdminStatus down(2), ifOperStatus down(2), ifName ge-0/2/1.0 Oct 10 17:49:01 R1 file[17142]: UI_LOAD_EVENT: User 'admin' is performing a 'rollback' Oct 10 17:49:01 R1 eventd: EVENTD_CONFIG_CHANGE_FAILED: Configuration change failed: rpc to management daemon failed while executing policy update-on-snmp-trap-link-down with user admin privileges
실패한 커밋은 다음을 포함하되 이에 국한되지 않는 다양한 이유로 발생할 수 있습니다.
-
후보 구성이 잠겼습니다
-
구성 모드 명령에 잘못된 구문 또는 순서가 있습니다.
-
이벤트 정책 작업을 위해 구성된 사용자에게 요청된 변경을 수행할 수 있는 적절한 권한이 없습니다.
해결책
계층 수준에서 [edit event-options policy update-on-snmp-trap-link-down then change-configuration commands] 구성 모드 명령을 확인하고 구문과 실행 순서가 올바른지 확인합니다.
또한 재시도 횟수 및 간격 옵션을 늘려 구성이 잠긴 경우 이벤트 정책이 첫 번째 실패 인스턴스 이후 지정된 횟수만큼 구성 변경을 시도하도록 합니다.
또한 구성된 사용자(있는 경우)가 요청된 변경을 수행할 수 있는 적절한 권한 수준을 가지고 있는지 확인합니다.
예: 이벤트에 대한 응답으로 인터페이스 구성 변경
이 예는 실시간 성능 모니터링(RPM) 프로브를 사용하여 주어진 인터페이스에 대한 PING_TEST_FAILED 이벤트를 생성합니다. 구성된 RPM 프로브에서 60초 이내에 3개의 PING_TEST_FAILED 이벤트의 첫 번째 인스턴스를 수신하면 이벤트 정책은 구성 변경 이벤트 정책 작업을 실행합니다. 이 작업은 지정된 인터페이스를 관리상 비활성화하도록 구성을 수정합니다. 네트워크 성능에 지속적으로 영향을 미치는 불안정하고 플랩핑되는 인터페이스가 있는 경우 이러한 유형의 조치가 필요할 수 있습니다.
요구 사항
-
Junos OS를 실행하는 디바이스 또는 Junos OS Evolved를 실행하는 디바이스.
개요
이 예에서는 disable-interface-on-ping-failure라는 이벤트 정책을 생성합니다. 이벤트 정책을 구성하여 eventd 프로세스가 특정 RPM 프로브에 의해 생성되고 ge-0/3/1 인터페이스와 연결된 PING_TEST_FAILED 이벤트를 수신하도록 합니다. 주어진 인터페이스에 대해 60초 간격 내에서 3개의 PING_TEST_FAILED 이벤트가 발생하면 이벤트 정책은 구성 변경 작업을 실행합니다. 이벤트 정책 구성 명령은 인터페이스를 관리상 비활성화합니다.
이벤트 정책을 테스트하기 위해 이 예에서는 ge-0/3/1 인터페이스와 연결된 IP 주소를 ping하는 RPM 프로브를 구성합니다. 이 예에서 ge-0/3/1.0 인터페이스는 IPv4 주소 10.1.4.1/26으로 구성됩니다. 기본적으로 테스트당 하나의 프로브가 전송되며, 이 예에서는 테스트 사이에 5초의 일시 중지를 사용합니다. 세 번의 연속 프로브 손실 후 RPM 프로브는 PING_TEST_FAILED 이벤트를 생성합니다. 여러 RPM 테스트가 동시에 실행될 수 있기 때문에 이벤트 정책은 수신된 PING_TEST_FAILED 이벤트의 및 test-name 속성을 RPM 프로브 소유자 이름 및 테스트 이름과 일치 owner-name 시킵니다. RPM 프로브가 60초 간격으로 3개의 PING_TEST_FAILED 이벤트를 생성하면 이벤트 정책이 트리거되어 인터페이스가 비활성화됩니다.
또한 이 이벤트 정책은 동일한 이벤트 또는 상관 이벤트의 발생으로 인해 동일한 구성 변경의 실행을 여러 번 제한하는 방법을 보여줍니다. 이 예 within 60 trigger on 3 에서 명령문은 구성 변경이 60초 간격 내에서 PING_TEST_FAILED 이벤트가 세 번째로 발생할 때만 트리거되도록 지정합니다. 명령문은 trigger until 4 PING_TEST_FAILED 이벤트의 후속 발생으로 인해 이벤트 정책이 다시 트리거되지 않도록 지정합니다.
조건만 trigger on 3 구성하면 커밋 작업이 루프에 들어갈 수 있습니다. 의 trigger until 4 조합 trigger on 3 은 이벤트 정책이 동일한 구성을 반복적으로 변경하는 것을 방지합니다.
구성
RPM 프로브 구성
CLI 빠른 구성
예의 이 섹션을 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일에 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경하고, 계층 수준에서 [edit] 명령을 복사하여 CLI에 붙여 넣은 다음, 구성 모드에서 들어갑니다 commit .
set services rpm probe icmp-ping-probe test ping-probe-test probe-type icmp-ping set services rpm probe icmp-ping-probe test ping-probe-test target address 10.1.4.1 set services rpm probe icmp-ping-probe test ping-probe-test test-interval 5 set services rpm probe icmp-ping-probe test ping-probe-test thresholds successive-loss 3 set system syslog file syslog-event-daemon-info daemon info
단계별 절차
이 예에서 PING_TEST_FAILED 이벤트를 생성하는 RPM 프로브를 구성하려면 다음을 수행합니다.
-
소유자가 icmp-ping-probe인 ping-probe-test라는 RPM 프로브를 생성합니다.
[edit services rpm] admin@R1# set probe icmp-ping-probe test ping-probe-test
-
ICMP 에코 요청을 보내도록 RPM 프로브를 구성합니다.
[edit services rpm probe icmp-ping-probe test ping-probe-test] admin@R1# set probe-type icmp-ping
IP 주소 10.1.4.1의 ge-0/3/1 인터페이스에 ICMP 에코 요청을 보내도록 RPM 프로브를 구성합니다.
[edit services rpm probe icmp-ping-probe test ping-probe-test] admin@R1# set target address 10.1.4.1
-
테스트 창 사이에 5초의 일시 중지를 구성합니다.
[edit services rpm probe icmp-ping-probe test ping-probe-test] admin@R1# set test-interval 5
-
RPM 프로브 임계값을 구성하여 3번의 연속 프로브 손실 후에 PING_TEST_FAILED 이벤트가 트리거되도록 합니다.
[edit services rpm probe icmp-ping-probe test ping-probe-test] admin@R1# set thresholds successive-loss 3
-
시설
daemon및 심각도info의 syslog 이벤트를 기록하도록 계층 수준에서[edit system syslog]새 로그 파일을 구성합니다.프로브 테스트 중에 전송된 이벤트를 캡처합니다.
[edit system syslog] admin@R1# set file syslog-event-daemon-info daemon info
-
구성을 커밋합니다.
admin@R1# commit
결과
구성 모드에서 and show system syslog 명령을 입력 show services 하여 구성을 확인합니다. 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.
[edit]
services {
rpm {
probe icmp-ping-probe {
test ping-probe-test {
probe-type icmp-ping;
target address 10.1.4.1;
test-interval 5;
thresholds {
successive-loss 3;
}
}
}
}
}
system {
syslog {
file syslog-event-daemon-info {
daemon info;
}
}
}
이벤트 정책 구성
CLI 빠른 구성
예의 이 섹션을 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일에 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경하고, 계층 수준에서 [edit] 명령을 복사하여 CLI에 붙여 넣은 다음, 구성 모드에서 들어갑니다 commit .
set event-options policy disable-on-ping-failure events ping_test_failed set event-options policy disable-on-ping-failure within 60 trigger on set event-options policy disable-on-ping-failure within 60 trigger 3 set event-options policy disable-on-ping-failure within 65 trigger until set event-options policy disable-on-ping-failure within 65 trigger 4 set event-options policy disable-on-ping-failure attributes-match ping_test_failed.test-owner matches icmp-ping-probe set event-options policy disable-on-ping-failure attributes-match ping_test_failed.test-name matches ping-probe-test set event-options policy disable-on-ping-failure then change-configuration commands "set interfaces ge-0/3/1 disable" set event-options policy disable-on-ping-failure then change-configuration user-name admin set event-options policy disable-on-ping-failure then change-configuration commit-options log "updating configuration from event policy disable-on-ping-failure"
단계별 절차
-
이벤트 정책을 생성하고 이름을 지정합니다.
[edit] admin@R1# edit event-options policy disable-interface-on-ping-failure
-
PING_TEST_FAILED 이벤트에서 일치하도록 이벤트 정책을 구성합니다.
[edit event-options policy disable-interface-on-ping-failure] admin@R1# set events ping_test_failed
-
60초 이내에 3개의 PING_TEST_FAILED 이벤트가 발생할 때 트리거되도록 정책을 구성합니다.
[edit event-options policy disable-interface-on-ping-failure] admin@R1# set within 60 trigger on 3
-
3개 이상의 PING_TEST_FAILED 이벤트가 발생할 경우 정책이 다시 트리거되지 않도록 문을 구성
within 65 trigger until 4합니다.[edit event-options policy disable-interface-on-ping-failure] admin@R1# set within 65 trigger until 4
-
이벤트 정책이 연관된 RPM 프로브에 의해 생성된 PING_TEST_FAILED 이벤트에 의해서만 트리거되도록 명령문을 구성
attributes-match합니다.[edit event-options policy disable-interface-on-ping-failure] admin@R1# set attributes-match ping_test_failed.test-owner matches icmp-ping-probe admin@R1# set attributes-match ping_test_failed.test-name matches ping-probe-test
-
이벤트 정책이 트리거될 경우 실행할 구성 모드 명령을 지정합니다.
각 명령을 한 줄로 구성하고, 명령 문자열을 따옴표로 묶고, 전체 문 경로를 지정합니다.
[edit event-options policy disable-interface-on-ping-failure then change-configuration] admin@R1# set commands "set interfaces ge-0/3/1 disable"
-
(선택 사항) 구성 변경을 설명하는 코멘트를 사용하여 옵션을 구성
log합니다.코멘트는 연관된 이벤트 정책을 통해 성공적인 커밋 작업이 수행된 후 커밋 로그에 추가됩니다.
[edit event-options policy disable-interface-on-ping-failure then change-configuration] admin@R1# set commit-options log "updating configuration from event policy disable-interface-on-ping-failure"
-
(선택 사항) 이중 라우팅 엔진이 있는 경우 두 라우팅 엔진에서 구성을 커밋하는 옵션을 구성
synchronize합니다. 모든 경고를 무시하고 다른 라우팅 엔진에서 커밋을 강제하는 옵션을 포함force합니다. 이 예에서는 andforce옵션을 구성하지 않습니다.synchronize -
(선택 사항) 구성 변경 및 커밋이 이루어지는 권한에 따라 사용자 이름을 구성합니다.
사용자 이름을 지정하지 않으면 작업은 사용자
root권한으로 실행됩니다.[edit event-options policy disable-interface-on-ping-failure then change-configuration] admin@R1# set user-name admin
-
구성을 변경하기 전에 운영 모드 명령의
show interfaces ge-0/3/1출력을 검토하십시오.참고:인터페이스가 활성화되어야 합니다.
admin@R1> show interfaces ge-0/3/1 Physical interface: ge-0/3/1, Enabled, Physical link is Up Interface index: 142, SNMP ifIndex: 531 ...
-
구성을 커밋합니다.
admin@R1# commit
결과
구성 모드에서 명령을 입력하여 구성을 확인합니다. show event-options 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정합니다.
[edit event-options]
policy disable-interface-on-ping-failure {
events ping_test_failed;
within 60 {
trigger on 3;
}
within 65 {
trigger until 4;
}
attributes-match {
ping_test_failed.test-owner matches icmp-ping-probe;
ping_test_failed.test-name matches ping-probe-test;
}
then {
change-configuration {
commands {
"set interfaces ge-0/3/1 disable";
}
user-name admin;
commit-options {
log "updating configuration from event policy disable-interface-on-ping-failure";
}
}
}
}
검증
구성이 제대로 작동하고 있는지 확인합니다.
이벤트 확인
목적
이벤트 정책을 수동으로 테스트하려면 3개의 PING_TEST_FAILED 이벤트가 생성될 때까지 ge-0/3/1 인터페이스를 오프라인으로 전환합니다.
작업
구성된 syslog 파일을 검토합니다. RPM 프로브가 연속적인 프로브 손실 후 PING_TEST_FAILED 이벤트를 생성하는지 확인합니다.
admin@R1> show log syslog-event-daemon-info Oct 7 15:48:54 R1 rmopd[1345]: PING_TEST_COMPLETED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test Oct 7 15:49:54 R1 rmopd[1345]: PING_TEST_COMPLETED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test ... Oct 7 15:52:54 R1 rmopd[1345]: RMOPD_ICMP_SENDMSG_FAILURE: sendmsg(ICMP): No route to host Oct 7 15:52:54 R1 rmopd[1345]: PING_PROBE_FAILED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test Oct 7 15:52:54 R1 rmopd[1345]: PING_TEST_FAILED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test Oct 7 15:52:57 R1 rmopd[1345]: PING_TEST_FAILED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test Oct 7 15:53:00 R1 rmopd[1345]: PING_TEST_FAILED: pingCtlOwnerIndex = icmp-ping-probe, pingCtlTestName = ping-probe-test
커밋 확인
목적
커밋 로그 및 메시지 로그 파일을 검토하여 이벤트 정책 커밋 작업이 성공했는지 확인합니다.
작업
운영 모드 명령을 실행 show system commit 하여 커밋 로그를 확인합니다.
admin@R1> show system commit
0 2011-10-07 15:53:00 PDT by admin via junoscript
updating configuration from event policy disable-interface-on-ping-failure
1 2011-09-02 14:16:44 PDT by admin via netconf
2 2011-07-08 14:33:46 PDT by root via other
메시지 로그 파일을 검토합니다.
admin@R1> show log messages | last 20 Oct 7 15:52:54 R1 rmopd[1345]: RMOPD_ICMP_SENDMSG_FAILURE: sendmsg(ICMP): No route to host Oct 7 15:53:00 R1 file[9972]: UI_COMMIT: User 'admin' requested 'commit' operation (comment: updating configuration from event policy disable-interface-on-ping-failure) Oct 7 15:53:02 R1 eventd: EVENTD_CONFIG_CHANGE_SUCCESS: Configuration change successful: while executing policy disable-interface-on-ping-failure with user admin privileges
의미
운영 모드 명령의 show system commit 출력과 메시지 로그 파일은 Junos OS가 구성된 이벤트 정책 작업을 실행하여 구성을 수정하고 커밋했는지 확인합니다. 지정된 날짜와 시간에 사용자 admin의 권한에 따라 이벤트 정책을 통해 수행된 커밋 작업이 성공했습니다. show system commit 출력 및 메시지 로그 파일은 구성된 커밋 옵션에 지정된 커밋 코멘트를 참조합니다.
구성 변경 사항 확인
목적
구성의 계층 수준을 검토 [edit interfaces ge-0/3/1] 하여 구성 변경 사항을 확인합니다.
작업
admin@R1> show configuration interfaces ge-0/3/1
disable;
unit 0 {
family inet {
address 10.1.4.1/26;
}
}
의미
ge-0/3/1 구성 계층은 이벤트 정책을 통해 수정되어 문을 추가했습니다.disable
인터페이스의 상태 확인
목적
구성 변경이 수행된 후 운영 모드 명령의 show interfaces ge-0/3/1 출력을 검토합니다.
작업
운영 모드 명령을 실행합니다 show interfaces ge-0/3/1 . 이벤트 정책 구성 변경 작업으로 인터페이스가 비활성화된 후 상태는 "사용"에서 "관리 중단"으로 변경됩니다.
admin@R1> show interfaces ge-0/3/1 Physical interface: ge-0/3/1, Administratively down, Physical link is Down Interface index: 142, SNMP ifIndex: 531