Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

Contrail Insights 컨테이너형 OpenStack 설치(OpenStack Kolla, Red Hat OpenStack Platform 13)

컨테이너화된 OpenStack 설정에서 Contrail Insights OpenStack 리소스와 OpenStack 서비스가 구축된 컨테이너를 모니터링합니다. 이 주제는 컨테이너 오케스트레이션 엔진 없이 OpenStack 서비스를 Contrail Insights Docker 컨테이너 내에서 실행될 때 구축하는 단계를 제공합니다. Kubernetes(OpenStack Helm)로 오케스트레이션된 컨테이너에서 OpenStack이 실행되는 설정은 openStack Helm의 Contrail Insights Installation을 참조하세요.

아키텍처

그림 1: Contrail Insights 및 컨테이너화된 OpenStack(OpenStack Kolla, Red Hat OpenStack Platform 13) Contrail Insights and Containerized OpenStack (OpenStack Kolla, Red Hat OpenStack Platform 13)
  • Contrail Insights Agent는 OpenStack 컴퓨팅 노드의 리소스 사용량을 모니터링합니다.

  • Contrail Insights 플랫폼은 시스템을 구성하는 REST API를 제공합니다.

  • Contrail Insights DataManager는 여러 에이전트의 데이터를 저장합니다.

  • Contrail Insights 대시보드는 웹 기반 사용자 인터페이스를 제공합니다.

  • OpenStack 어댑터가 OpenStack 클러스터에서 실행되는 가상 머신(VM)을 발견합니다.

  • Contrail Insights OpenStack 서비스가 실행 중인 Docker 컨테이너를 검색합니다.

요구 사항

  • 플랫폼이 설치된 각 호스트의 경우 Contrail Insights 소프트웨어 요구 사항에 대한 Contrail Insights 일반 요구 사항을 참조하십시오. 에이전트 지원 Contrail Insights 목록은 Contrail Insights Agent Requirements를 참조하세요.

  • OpenStack 서비스에 대한 API 액세스. Contrail Insights 다양한 OpenStack 서비스가 제공하는 API를 통해 OpenStack 클러스터에 대한 정보를 읽습니다. 구성 중에 제공되는 사용자 자격 증명은 읽기 전용 API 호출에 충분한 권한을 제공해야 합니다. 또한 Contrail Insights 플랫폼은 API 서버가 실행되는 호스트 및 포트에 대한 연결을 열 수 있어야 합니다.

  • 참고:

    업그레이드 공지: Contrail Insights 3.2.6에서 시작하여 라이선스 파일에 대한 요구 사항이 제거됩니다. 3.2.6보다 일찍 버전을 설치하는 경우 설치 전에 라이선스가 필요합니다.

    라이선스 키를 에서 얻을 수 mailto:APPFORMIX-KEY-REQUEST@juniper.net. 요청 시 다음과 같은 정보를 제공합니다.

연결

  • 플랫폼 호스트를 위한 하나의 IP 주소.

  • 플랫폼 호스트는 컴퓨팅 노드에 도달하려면 IP 연결이 있어야 합니다.

  • 플랫폼 호스트를 설치하는 동안 인터넷 연결이 필요합니다.

  • 컨트롤 플레인 서비스는 자사에 호스팅된 레지스트리에서 검색되는 Docker 이미지로 Contrail Insights. 선택적으로 Docker 이미지를 다운로드하여 로컬 레지스트리에서 사용할 수 있습니다.

  • 대시보드 클라이언트(브라우저에서)는 플랫폼 호스트에 IP 연결이 있어야 합니다.

워크플로

설치에는 다음과 같은 워크플로우가 포함됩니다.

  1. 최초 설정.

  2. Agent 설치를 위한 사전 사전 전제

  3. Configuring OpenStack.

  4. Contrail Insights 설치합니다.

  5. 옵션 구성.

최초 설정

초기 설정을 완료하려면 다음을 제공합니다.

  1. Ansible 및 기타 필수 패키지를 노드에 appformix_controller 설치합니다.

    참고:

    RHEL의 경우, 포트 iptables 9000에 액세스하기 위해 다음 규칙이 필요합니다.

  2. 다음 명령을 사용하여 컴퓨팅 libvirt 노드에 설치합니다.

    커널 기반 가상 머신(KVM)과 컴퓨팅 노드에서 실행되는 가상 머신에서 데이터를 수집하기 위한 관련 패키지를 설치합니다.

  3. VRouter 컴퓨팅 노드에 Python을 설치하면 Contrail Insights virtualenv 에이전트가 실행됩니다.

  4. Contrail Insights 플랫폼 노드와 OpenStack 클러스터 노드 간에 암호가 없는 SSH를 설정합니다. 다음 명령을 실행하여 SSH 공용 키를 모든 노드에 생성하고 복사합니다.

Agent 설치를 위한 사전 전제

Contrail Insights 라이브러리를 사용하여 OpenStack 컴퓨팅 노드에서 실행되는 가상 머신에서 데이터를 libvirt 수집합니다. 모든 OpenStack 컴퓨팅에서 다음 명령을 실행하여 라이브러리를 설치합니다.

OpenStack 구성

Contrail Insights OpenStack 클러스터에 구성된 모든 프로젝트에 대한 정보를 읽습니다. 소프트웨어는 관리자 권한을 요구합니다. 새 관리자 계정을 생성하여 Contrail Insights. 새 관리자 계정을 생성하지 않는 경우 새 관리자 계정을 구성하는 동안 기존 관리자 계정의 사용자 이름과 암호를 Contrail Insights.

운영자에 대한 관리자 Contrail Insights OpenStack Horizon 대시보드에서 다음 단계를 수행합니다.

  1. 사용자 계정을 생성하고 이름을 appformix 지정합니다.

  2. 사용자 계정에 대한 새 프로젝트를 선택합니다.

  3. 으로 역할을 admin 선택합니다.

설치 Contrail Insights

설치 Contrail Insights:

  1. 소프트웨어 다운로드에서 Contrail Insights 플랫폼 노드로 배포하는 Contrail Insights 패키지를 다운로드하십시오. 아래 파일 다운로드:

    3.2.6보다 일찍 버전을 설치하는 경우 Contrail Insights 플랫폼 노드에 Contrail Insights 라이선스 파일을 복사합니다.

  2. contrail-insights-<version>.tar.gz 언지프(Unzip) 이 패키지에는 설치에 필요한 모든 Ansible 플레이북이 Contrail Insights.

    참고:

    나머지 단계는 디렉토리 내에서 contrail-insights-<version>/ 실행됩니다. 제품 이름이 "AppFormix"에서 "Contrail Insights"로 변경됐지만, UI 및 내부 명령 경로는 계속 AppFormix 표시되고 나중에 새 이름을 반영합니다.

  3. 템플릿으로 sample_inventory 사용하여 설치를 위한 인벤토리 파일을 만듭니다. 섹션에 OpenStack 컴퓨팅 노드와 섹션의 Contrail Insights compute 플랫폼 노드를 appformix_controller 설명합니다. 섹션에서 OpenStack 컨트롤러 서비스를 실행하는 노드를 openstack_controller 설명합니다.

  4. 인벤토리 파일에 언급된 모든 호스트가 Contrail Insights 플랫폼에서 도달할 수 있도록 합니다.

  5. 으로 불리는 디렉토리를 group_vars 생성합니다. 에서 요구하는 구성 변수를 사용하여 이 디렉토리 내부에 all 이름을 Contrail Insights.

    3.2. Contrail Insights 6보다 일찍 버전을 설치하는 경우 group_vars/all

    클러스터에서 네트워크 디바이스 모니터링을 활성화하려면파일에 다음을 group_vars/all 포함하십시오.

  6. OpenStack 컨트롤러 노드 ()에서 플레이북이 Contrail Insights 플랫폼 노드로 파일을 openrc /etc/contrail/openstackrc 소스화합니다. 파일에는 다음과 같이 표시됩니다.

  7. 생성된 인벤토리 파일로 Ansible을 실행합니다.

    플레이북은 오류 없이 실행될 수 있습니다.

  8. Log in to the Contrail Insights Dashboard:

    Auth Service 대화 상자에는 두 가지 옵션이 제공됩니다.

    OpenStack

    OpenStack 자격 증명으로 로그인합니다.

    AppFormix

    Contrail Insights 플랫폼 노드에서 사용할 수 있는 자격 증명을 Contrail Insights /opt/appformix/etc/appformix_token.rst 로그인합니다.

옵션 구성

클러스터에 Contrail Insights 인증된 플러그인을 설치하려면 파일에 다음과 같은 변수를 group_vars/all 포함합니다.

예제:

설치할 수 Contrail Insights 인증 받은 플러그인의 목록은 파일에서 시작하는 항목을 plugin_info 찾아야 roles/appformix_defaults/defaults/main.yml 합니다.

OpenStack 로그 파서 플러그인은 각 OpenStack 서비스의 API 로그 파일을 파서 분석하여 API 통화 및 응답 상태 코드에 대한 메트릭을 수집합니다. 위의 예제와 같이 이러한 플러그인을 설치하려면 해당 플러그인을 변수에 appformix_openstack_log_plugins group_vars/all 추가하십시오. 이 목록의 각 플러그인 엔트리에는 지정해야 하는 매개 log_file_path 변수가 필요합니다. 이 매개 변수는 OpenStack Controller 노드의 서비스 API 로그 파일에 대한 전체 경로로 설정해야 합니다. 여러 콤마 분리된 경로를 지정할 수 있습니다.

에 지정될 올바른 로그 파일을 식별하려면 클라이언트 IP 주소, REST 호출 유형 및 응답 상태 코드를 포함하는 다음과 같은 항목을 log_file_path 찾아야 합니다.

이들 파일의 기본 위치는 의 변수에 appformix_openstack_log_factory_plugins 나열되어 roles/appformix_defaults/defaults/main.yml 있습니다.

컨테이너화된 OpenStack 환경에서는 OpenStack 서비스를 실행하는 컨테이너 내부에서 로그 파일이 생성됩니다. 그러나 이 컨트롤러는 openStack 컨트롤러 호스트에서 Contrail Insights 플러그인을 읽을 수 있도록 제공해야 합니다. 지정된 경로는 OpenStack Controller 호스트의 파일 위치 log_file_path 입니다.

참고:

버전 3.Contrail Insights 경우, 모든 OpenStack 로그 파서 플러그인을 변수에 지정해야 appformix_openstack_log_plugins 합니다. 이전 버전에서 3.0으로 업그레이드할 때 에서 정의된 모든 OpenStack 로그 파서 플러그인을 으로 이동해야 appformix_plugins appformix_openstack_log_plugins 합니다. 또한, Contrail Insights 3.0에서 위에서 설명한 대로 이 목록의 모든 엔트리를 값으로 log_file_path 지정해야 합니다.

노드를 다른 노드에서 Contrail Insights

다음에서 노드를 Contrail Insights.

  1. 인벤토리 파일을 편집하고 제거하려는 각 노드에 appformix_state=absent Contrail Insights.

  2. 편집된 인벤토리 파일로 Ansible을 실행합니다.

    그러면 노드와 모든 리소스가 Contrail Insights.