네트워크/ACI

CISCO ACI Policy Model

고미-고미 2023. 4. 13. 17:37
728x90

 Cisco ACI Policy Model 정의 및 소개

  - Cisco ACI에서 사용하는 Policy Model은 인프라를 관리하는데 사용되는 기술적인 프레임워크 입니다. 해당 모델은 ACI 인프라의 논리적 모델에서 정의되며, 관리 작업 및 ACI 인프라의 동작 방식을 제어하는데 사용 됩니다. 

 

  - Cisco ACI는 데이터센터의 운영 자동화, 프로그래밍적 관리 및 복합적인 오케스트레이션 기능을 제공하며, ACI가 적용한 정책모델은 어플리케이션의 요구사항을 명세하고 네트워크 전체로 자동화된 배포를 목표로 합니다.  이러한 접근 방법을 선언적 관리 모델 (Declarative Management Model) 이라고 합니다. 

 

 SDN Control Plane에 대한 접근 방법 

  - Imperative (명령적) 접근 방식중앙 SDN 컨트롤러가 네트워크 환경의 '두뇌' 역할을 하며, 응용 프로그램에서 요청이 들어오면 컨트롤러가 이를 처리하고 스위치/라우터에 필요한 설정을 내려줍니다. 하지만 이 방식에서는 컨트롤러가 병목 현상과 단일 장애 지점이 될 가능성이 있음.

 

 - Declarative (선언적) 접근 방식컨트롤러가 응용 프로그램의 요구사항을 선언하고, 이를 스위치 및 라우터와 같은 네트워크 장비에 전송하여 그 요구사항을 충족시키도록 합니다. 이 방식은 더 분산된 인텔리전스를 가능하게 하며, 중앙 정책을 설정하고 네트워크 노드가 정책을 실행하는 방법을 결정할 수 있습니다. 이 방식은 'promise theory'라는 개념을 기반으로 함. 

 

Cisco ACI는 선언적 접근 방식을 사용하며, 선언적 접근 방식의 대표적인 사례는 "모든 웹 서버에 대한 방화벽 규칙은 인터넷에서 들어오는 모든 트래픽을 차단" 이고 이것을 수행하는 구체적인 방법에 대해서는 명시하지 않고 정책을 만들고 물리적인 네트워크 장비에게 정책을 내리면 스위치에서 실제 설정이 구현 됩니다.

 

 Cisco ACI Policy Model 특징

  ▪ Model Driven Architecture에서는 소프트웨어가 시스템의 관리적/운영 상태를 완벽히 표현합니다. 이 모델은 Fabric, Service, System 동작 그리고 네트워크에 접근하는 가상 장비와 물리장비에 통합적으로 적용됩니다.

  ▪ 논리적 구성과 ACI 객체의 실제 구성(Concrete Domain)은 구분 됩니다. 논리적인 설정은 렌더링되어 ACI 객체의 실제 구성에 적용 됩니다. 논리적인 설정은 ACI 객체의 설정을 일괄적으로 관리하기 위해 사용되며, 논리적인 설정은 실제로 아직 적용되지 않은 상태 이고,  논리적인 설정은 물리적인 자원 유무를 고려하여 적용 됩니다. 

  ▪ ACI Network에 접속하는 신규장비의 경우, 정책 모델에서 장비에 대한 정책 반영 후 통신이 가능 합니다.

  ▪ Policy Model은 인프라, 인증, 보안, 서비스, 어플리케이션, 진단과 같은 전체 Fabirc을 관리 하며, 아래 그림은 ACI Policy Model의 논리적 구성 입니다. 

  ▪ Fabric은 물리적/논리적 구성요소로 구성 되어 있고, 이러한 정보들은 관리 정보 모델 (Management Information Model, MIM)에 기록 됩니다. 이러한 정보 모델은 APIC 프로세스에 의해 저장되고 관리 됩니다. 

 

  ▪ ACI Policy Model은 계층적 구조이며, 최상단(ROOT)으로 Policy Universe가 있고 하위에 고유한 객체가 위치하게 됩니다. 해당 객체는 MO(Managed Object) 이며, Fabric 내에서 유일한 식별자 이름 (Distinguished Name, DN)을 가지고 있고 이를 통해 객체를 설명하고 계층 구조의 위치를 설명 할 수 있습니다. 


Render: 정책이 네트워크 구성요소 또는 종단 장비(EndPoint)에게 적용되는 과정을 의미 함.

Concrete Domain: 네트워크 객체(예: 물리 스위치, 포트, VLAN, 서브넷, 논리적 객체 등)를 나타내는 용어

Concrete Configuration:  ACI 객체의 실제 구성을 나타내는 것으로, 특정 객체의 설정 값이나 상태를 의미 합니다. 예를 들어, VLAN Pool을 생성하면 Concrete Configuration에서는 해당 VLAN Pool의 이름, 할당된 VLAN ID 범위 등의 정보가 포함됩니다.

Concrete Configuration은 ACI 객체의 상태를 나타내므로, ACI 객체를 생성, 수정 또는 삭제할 때마다 업데이트됩니다. 이 정보는 ACI 객체의 구성을 확인하고 문제를 해결하는 데 유용합니다. ACI 객체의 구성 변경 내역을 추적하고 신속하게 대처할 수 있도록 합니다.

 

 

728x90