섀시 클러스터의 노드 모니터링
클러스터를 모니터링하려면 중복 그룹을 검색해야 합니다. 섀시 클러스터 모드에서 디바이스를 초기화하면 시스템은 이 주제에서 중복 그룹 0이라고 하는 중복 그룹을 생성합니다. 중복 그룹 0은 클러스터의 각 노드에 있는 라우팅 엔진 간의 우선 순위 및 페일오버를 관리합니다. 모든 중복 그룹의 경우와 마찬가지로 중복 그룹 0은 한 번에 하나의 노드에서만 기본이 될 수 있습니다. 중복 그룹 0이 기본인 노드는 클러스터에서 어떤 라우팅 엔진이 활성화되는지를 결정합니다. 라우팅 엔진이 활성 엔진인 경우 노드는 클러스터의 기본 노드로 간주됩니다. 1에서 128까지 번호가 매겨진 하나 이상의 중복 그룹을 구성할 수 있으며, 이 섹션에서는 중복 그룹 x라고 합니다. 중복 그룹의 최대 수는 구성하는 중복 이더넷 인터페이스 +1의 수와 같습니다. 각 중복 그룹 x는 페일오버의 독립적인 단위 역할을 하며 한 번에 하나의 노드에서만 기본입니다. 이 정보를 검색하는 데 사용할 수 있는 관리 정보 베이스(MIB)가 없습니다.
Junos OS XML 관리 프로토콜 또는 NETCONF XML 관리 프로토콜 사용
원격 프로시저 호출(RPC)을 get-configuration
사용하여 디바이스에 존재하는 중복 구성 및 중복 그룹을 가져옵니다. 이렇게 하면 구성된 중복 그룹이 제공됩니다.
구성 검색을 위한 XML RPC
<rpc> <get-configuration inherit="inherit" database="committed"> <configuration> <chassis> <cluster> </cluster> </chassis> </configuration> </get-configuration> </rpc>
응답:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/10.4I0/junos"> <configuration xmlns="http://xml.juniper.net/xnm/1.1/xnm" junos:commit-seconds="1277806450" junos:commit-localtime="2010-06-29 03:14:10 PDT" junos:commit-user="regress"> <chassis> <cluster> <reth-count>10</reth-count> <control-ports> <fpc>4</fpc> <port>0</port> </control-ports> <control-ports> <fpc>10</fpc> <port>0</port> </control-ports> <redundancy-group> <name>0</name> <node> <name>0</name> <priority>254</priority> </node> <node> <name>1</name> <priority>1</priority> </node> </redundancy-group> <redundancy-group> <name>1</name> <node> <name>0</name> <priority>100</priority> </node> <node> <name>1</name> <priority>1</priority> </node> </redundancy-group> </cluster> </chassis> </configuration> </rpc-reply> ]]>]]>
섀시 클러스터 중복 이더넷 인터페이스
중복 이더넷 인터페이스는 클러스터의 각 노드에서 최소 하나의 물리적 인터페이스를 포함하는 의사 인터페이스입니다. 중복 이더넷 인터페이스는 구성 명령에서 reth라고 합니다. 다음 샘플 출력은 존재하고 구성된 두 개의 중복 그룹을 보여줍니다.
Junos OS XML 관리 프로토콜 또는 NETCONF XML 관리 프로토콜 사용
원격 프로시저 호출(RPC)을
get-chassis-cluster-interfaces
사용하여 reth 인터페이스 세부 정보를 가져옵니다. 다음 샘플 출력은 구성된 4개의 reth 인터페이스를 보여줍니다.섀시 클러스터 인터페이스를 위한 XML RPC
user@host>
show chassis cluster interfaces |display xml
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/11.4R5/junos"> <chassis-cluster-interface-statistics> <control-interface-status>Up</control-interface-status> <control-link-interfaces> <control-information> <control-link-interface-index>0</control-link-interface-index> <control-link-interface-name>em0</control-link-interface-name> <control-link-interface-status>Up</control-link-interface-status> </control-information> <control-information> <control-link-interface-index>1</control-link-interface-index> <control-link-interface-name>em1</control-link-interface-name> <control-link-interface-status>Down</control-link-interface-status> </control-information> </control-link-interfaces> <dataplane-interface-status>Up</dataplane-interface-status> <dataplane-interfaces> <fabric-information> <fabric-interface-index>0</fabric-interface-index> <fabric-child-interface-name>ge-6/0/15</fabric-child-interface-name> <fabric-child-interface-status>Up</fabric-child-interface-status> <fabric-interface-index>0</fabric-interface-index> </fabric-information> <fabric-information> <fabric-interface-index>1</fabric-interface-index> <fabric-child-interface-name>ge-19/0/15</fabric-child-interface-name> <fabric-child-interface-status>Up</fabric-child-interface-status> <fabric-interface-index>1</fabric-interface-index> </fabric-information> </dataplane-interfaces> <reth> <reth-name>reth0</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth1</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>Not configured</redundancy-group-id-for-reth> <reth-name>reth2</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth3</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>Not configured</redundancy-group-id-for-reth> <reth-name>reth4</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth5</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth6</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth7</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth8</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth9</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth10</reth-name> <reth-status>Up</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth11</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth12</reth-name> <reth-status>Down</reth-status> <redundancy-group-id-for-reth>Not configured</redundancy-group-id-for-reth> <reth-name>reth13</reth-name> <reth-status>Up</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth14</reth-name> <reth-status>Up</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth15</reth-name> <reth-status>Up</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> <reth-name>reth16</reth-name> <reth-status>Up</reth-status> <redundancy-group-id-for-reth>1</redundancy-group-id-for-reth> </reth> <interface-monitoring> </interface-monitoring> </chassis-cluster-interface-statistics> <cli> <banner>{secondary:node0}</banner> </cli> </rpc-reply> user@host>show chassis cluster interfaces
Control link status: Up Control interfaces: Index Interface Status 0 em0 Up 1 em1 Down Fabric link status: Up Fabric interfaces: Name Child-interface Status fab0 ge-6/0/15 Up fab0 fab1 ge-19/0/15 Up fab1 Redundant-ethernet Information: Name Status Redundancy-group reth0 Down 1 reth1 Down Not configured reth2 Down 1 reth3 Down Not configured reth4 Down 1 reth5 Down 1 reth6 Down 1 reth7 Down 1 reth8 Down 1 reth9 Down 1 reth10 Up 1 reth11 Down 1 reth12 Down Not configured reth13 Up 1 reth14 Up 1 reth15 Up 1 reth16 Up 1 {secondary:node0}원격 프로시저 호출(RPC)을
get-interface-information
사용하여 reth 인터페이스 세부 정보를 표시하고 디바이스에서 reth 인터페이스를 식별합니다. 또한 이 RPC는 다음 샘플 출력에 표시된 대로 어떤 기가비트 이더넷 또는 고속 이더넷 인터페이스가 어떤 reth 인터페이스에 속하는지 보여줍니다.인터페이스 정보에 대한 XML RPC
<rpc> <get-interface-information> <terse/> <interface-name>reth0</interface-name> </get-interface-information> </rpc><rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/10.4I0/junos"> <interface-information xmlns="http://xml.juniper.net/junos/10.4I0/junos-interface" junos:style="terse"> <physical-interface> <name> reth0 </name> <admin-status> up </admin-status> <oper-status> up </oper-status> <logical-interface> <name> reth0.0 </name> <admin-status> up </admin-status> <oper-status> up </oper-status> <filter-information> </filter-information> <address-family> <address-family-name> inet </address-family-name> <interface-address> <ifa-local junos:emit="emit"> 192.168.29.2/24 </ifa-local> </interface-address> </address-family> <address-family> <address-family-name> multiservice </address-family-name> </address-family> </logical-interface> </physical-interface> </interface-information> Now, the interface that belongs to this. Extracting only the relevant information <rpc> <get-interface-information> <terse/> </get-interface-information> </rpc><rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/10.4I0/junos"> <interface-information xmlns="http://xml.juniper.net/junos/10.4I0/junos-interface" junos:style="terse"> <physical-interface> <name> ge-5/1/1 </name> <admin-status> up </admin-status> <oper-status> up </oper-status> <logical-interface> <name> ge-5/1/1.0 </name> <admin-status> up </admin-status> <oper-status> up </oper-status> <filter-information> </filter-information> <address-family> <address-family-name> aenet </address-family-name> <ae-bundle-name> reth0.0 </ae-bundle-name> </address-family> </logical-interface> </physical-interface> </interface-information>
샘플 출력에서 태그는
ae-bundle-name
자신이 속한 reth 인터페이스를 식별합니다.
SNMP 사용
ifTable 관리 정보 베이스(MIB) 테이블은 모든 reth 인터페이스를 보고합니다.
ifStackStatus 관리 정보 베이스(MIB) 테이블을 사용하여 reth 인터페이스를 기본 및 보조 노드의 기본 인터페이스에 매핑합니다. reth 인터페이스는 상위 레이어이며, 두 노드의 개별 인터페이스는 하위 레이어 인덱스로 표시됩니다.
Reth 인터페이스 세부 정보에 대한 샘플 SNMP 데이터
다음 샘플에서 ge-5/1/1 및 ge-11/1/1은 reth0에 속합니다.
{primary:node0} user@host>
show interfaces terse | grep reth0
ge-5/1/1.0 up up aenet --> reth0.0 ge-11/1/1.0 up up aenet --> reth0.0 reth0 up up reth0.0 up up inet 192.168.29.2/24ifTable에서 모든 인터페이스의 인덱스를 찾습니다. 다음 정보는 이 예에서 필요한 인터페이스의 인덱스를 보여줍니다.
{primary:node0} user@host>
show snmp mib walk ifDescr | grep reth0
ifDescr.503 = reth0.0 ifDescr.528 = reth0이제 ifStackStatus 테이블에서 reth0에 대한 인덱스를 검색합니다. 다음 샘플 출력에서 reth0 인덱스 503은 상위 레이어 인덱스이고 인덱스 522 및 552는 하위 레이어 인덱스입니다. 인덱스 522와 552는 각각 인터페이스 ge-5/1/1.0 및 ge-11/1/1.0을 나타냅니다.
{primary:node0} user@host>
show snmp mib walk ifStackStatus | grep 503
ifStackStatus.0.503 = 1 ifStackStatus.503.522 = 1 ifStackStatus.503.552 = 1 {primary:node0} user@host>show snmp mib walk ifDescr | grep 522
ifDescr.522 = ge-5/1/1.0 {primary:node0} user@host>show snmp mib walk ifDescr | grep 552
ifDescr.552 = ge-11/1/1.0
컨트롤 플레인 사용
액티브/백업 모드에서 작동하는 컨트롤 플레인 소프트웨어는 클러스터의 기본 노드에서 활성화되는 Junos OS의 필수적인 부분입니다. 보조 노드의 비활성 라우팅 엔진에 상태, 구성 및 기타 정보를 전달하여 중복성을 달성합니다. 기본 라우팅 엔진에 장애가 발생하면 보조 라우팅 엔진이 제어를 맡을 준비가 됩니다. 다음 방법을 사용하여 제어 포트 정보를 검색할 수 있습니다.
Junos OS XML 관리 프로토콜 또는 NETCONF XML 관리 프로토콜 사용
원격 프로시저 호출(RPC)을 get-configuration
사용하여 다음 샘플 출력에 표시된 대로 제어 포트 구성을 가져옵니다.
중복 그룹 구성을 위한 XML RPC
<rpc> <get-configuration inherit="inherit" database="committed"> <configuration> <chassis> <cluster> </cluster> </chassis> </configuration> </get-configuration> </rpc>
데이터 플레인 사용
액티브/액티브 모드에서 작동하는 데이터 플레인 소프트웨어는 플로우 처리 및 세션 상태 중복을 관리하고 전송 트래픽을 처리합니다. 특정 세션에 속한 모든 패킷은 동일한 노드에서 처리되어 동일한 보안 처리가 적용됩니다. 시스템은 세션이 활성 상태인 노드를 식별하고 처리를 위해 패킷을 해당 노드로 전달합니다. 데이터 링크를 패브릭 인터페이스라고 합니다. 클러스터의 패킷 전달 엔진에서 전송 트래픽을 전송하고 데이터 플레인 소프트웨어의 동적 런타임 상태를 동기화하는 데 사용됩니다. 시스템이 패브릭 인터페이스를 생성하면 소프트웨어는 패킷 전송에 사용할 내부적으로 파생된 IP 주소를 할당합니다. 패브릭은 클러스터의 두 노드 간의 물리적 연결이며 한 쌍의 이더넷 인터페이스를 연속적으로(각 노드에서 하나씩) 연결하여 형성됩니다. 다음 방법을 사용하여 데이터 플레인 인터페이스를 결정할 수 있습니다.
Junos OS XML 관리 프로토콜 또는 NETCONF XML 관리 프로토콜 사용
원격 프로시저 호출(RPC)을 get-chassis-cluster-data-plane-interfaces
사용하여 다음 샘플 출력과 같이 데이터 플레인 인터페이스를 가져옵니다.
클러스터 데이터 플레인 인터페이스 세부 정보에 대한 XML RPC
<rpc> <get-chassis-cluster-data-plane-interfaces> </get-chassis-cluster-data-plane-interfaces> </rpc><rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/10.4I0/junos"> <chassis-cluster-dataplane-interfaces> <fabric-interface-index>0</fabric-interface-index> <fabric-information> <child-interface-name>xe-5/0/0</child-interface-name> <child-interface-status>up</child-interface-status> </fabric-information> <fabric-interface-index>1</fabric-interface-index> <fabric-information> <child-interface-name>xe-11/0/0</child-interface-name> <child-interface-status>up</child-interface-status> </fabric-information> </chassis-cluster-dataplane-interfaces>
SNMP 사용
ifTable 관리 정보 베이스(MIB) 테이블은 패브릭(팹) 인터페이스와 링크 인터페이스를 보고합니다. 그러나 기본 인터페이스와 패브릭 인터페이스 간의 관계는 SNMP를 사용하여 확인할 수 없습니다.
섀시 클러스터 노드 프로비저닝
일반적으로 SRX 시리즈 디바이스 및 Junos OS 디바이스의 구성 및 프로비저닝을 위해 NETCONF XML 관리 프로토콜을 사용합니다. 그룹을 사용하여 SRX 시리즈 섀시 클러스터를 구성하는 것이 좋습니다. 노드 간에 공통적인 모든 구성에 대해 글로벌 그룹을 사용합니다.
Junos OS 커밋 스크립트를 사용하여 원하는 대로 구성을 사용자 지정할 수 있습니다.
Junos OS 커밋 스크립트는 다음과 같습니다.
커밋 시 실행
들어오는 구성을 검사합니다
다음을 포함한 작업을 수행합니다.
커밋 실패(자기 방어)
구성 수정(자동 수정)
커밋 스크립트는 다음을 수행할 수 있습니다.
사용자 지정 오류/경고/syslog 메시지 생성
구성을 변경하거나 수정합니다
커밋 스크립트를 사용하면 다음을 적용하도록 디바이스를 구성하는 방법을 더 잘 제어할 수 있습니다.
설계 규칙
구현 세부정보
설계 표준의 100%