단일 노드 구성은 OpenStack을 제품으로 테스트하고 해당 기능을 익히는 데 유용합니다. 하지만 단일 노드 구성은 운용 환경에는 적합하지 않습니다. 이 환경에서는 여러 시스템 또는 노드에 걸쳐 OpenStack을 설치하고 구성합니다.
각 클라우드에는 대시보드 인스턴스, 이미지 저장소 및 ID 서비스가 하나씩만 필요하며, 저장소와 Compute 인스턴스가 여러 개 포함될 수 있습니다. 특정 클라우드 배치에 대한 요구사항과 관련하여 각 구성요소를 평가한 후 구성요소를 별도의 노드에 설치해야 할지 여부와 필요한 해당 유형의 노드 수를 결정하십시오.
이 장에서 설명되는 아키텍처는 다음과 같은 세 시스템에 배치됩니다.
컨트롤러 노드 - 대부분의 공유 OpenStack 서비스 및 기타 도구가 실행되는 노드입니다. 컨트롤러 노드는 API, 예약 및 기타 클라우드용 공유 서비스를 제공합니다. 컨트롤러 노드에는 대시보드, 이미지 저장소 및 ID 서비스가 있습니다. 추가적으로 Nova Compute 관리 서비스와 Neutron 서버도 이 노드에 구성됩니다.
컴퓨트 노드 - Nova 컴퓨트 인스턴스라고도 하는 VM 인스턴스가 설치되는 노드입니다. 이 노드에서는 이러한 VM 인스턴스를 관리하는 컴퓨트 데몬이 실행됩니다.
저장소 노드 - 데이터를 호스트하는 노드입니다.
이 3노드 아키텍처는 여러 시스템에 OpenStack을 배치하는 유일한 방법입니다. 유연성 덕분에 이 아키텍처가 아닌 방법으로 OpenStack 구성요소를 배포할 수 있습니다. 따라서 설치를 시작하기 전에 클라우드 구성을 계획해야 합니다. 계획에 대한 자세한 내용은 OpenStack 구성 계획을 참조하십시오.
다음 그림은 이 장에서 설명되는 높은 레벨의 아키텍처 뷰를 보여줍니다.
그림 1 3노드 구성 참조 아키텍처
이 그림은 Cinder를 사용하여 저장소 노드를 설명합니다. 그러나 Swift 객체 저장소 서비스도 비슷하게 구성할 수 있습니다.
Oracle Solaris에서 EVS(탄력적 가상 스위치)는 OpenStack 네트워킹의 백엔드를 구성합니다. EVS를 사용하면 VLAN 또는 VXLAN에 있는 VM 인스턴스 간 통신이 용이해집니다. VM 인스턴스는 하나의 컴퓨트 노드에 있거나 여러 컴퓨트 노드에 걸쳐 있을 수 있습니다. EVS에 대한 자세한 내용은 탄력적 가상 스위치에 대한 네트워크 가상화 및 네트워크 리소스 관리를 참조하십시오. 이 설명서는 해당 Oracle Solaris 버전의 라이브러리(Operating Systems Documentation)에 있습니다.
다른 노드가 서로 통신하도록 하려면 컨트롤러 노드의 evsuser, neutron 및 root의 SSH 공개 키가 구성된 모든 컴퓨트 노드에 있는 evsuser의 각 authorized_keys 파일에 있어야 합니다. 다음 그림에서 SSH 공개 키 배포를 참조하십시오. 그림에서는 여러 컴퓨트 노드가 구성된 것으로 가정합니다.
그림 2 EVS 컨트롤러 SSH 키 배포
Oracle Solaris 시스템에 OpenStack을 배치하는 데 유용한 OpenStack 구성 매개변수 목록은 공통 OpenStack 구성 파일 및 서비스를 참조하십시오.