37.2. 설치


OpenShift Container Platform에서 집계 로깅 스택을 설치하는 일반적인 절차는 컨테이너 로그 집계에 설명되어 있습니다. 설치 가이드를 수행하는 동안 다음과 같은 몇 가지 중요한 사항에 유의해야 합니다.

로깅 Pod가 클러스터에 균등하게 분배되려면 프로젝트를 생성할 때 비어 있는 노드 선택기 를 사용해야 합니다.

$ oc adm new-project logging --node-selector=""

나중에 수행되는 노드 레이블링과 함께 로깅 프로젝트 전체에서 Pod 배치를 제어합니다.

Elasticsearch(ES)는 노드 장애에 대한 복원력을 위해 3개 이상의 클러스터 크기로 배포해야 합니다. 이는 인벤토리 호스트 파일에서 openshift_logging_es_cluster_size 매개 변수를 설정하여 지정합니다.

매개 변수 전체 목록은 Ansible 변수를 참조하십시오.

Kibana에는 브라우저가 액세스하는 데 사용할 수 있는 호스트 이름이 필요합니다. 예를 들어 랩탑에서 실행되는 웹 브라우저에서 Kibana에 액세스하려면 Kibana의 DNS 별칭을 회사 이름 서비스에 추가해야 할 수 있습니다. 로깅 배포는 "인프라" 노드 또는 OpenShift 라우터가 실행될 때마다 Kibana에 대한 경로를 생성합니다. Kibana 호스트 이름 별칭은 이 시스템을 가리켜야 합니다. 이 호스트 이름은 Ansible openshift_logging_kibana_hostname 변수로 지정됩니다.

설치는 레지스트리에서 이미지를 이미 검색했는지 여부와 클러스터 크기에 따라 다소 시간이 걸릴 수 있습니다.

openshift-logging 프로젝트에서 oc get all 을 사용하여 배포를 확인할 수 있습니다.

$ oc get all

NAME                          REVISION                 REPLICAS      TRIGGERED BY
logging-curator               1                        1
logging-es-6cvk237t           1                        1
logging-es-e5x4t4ai           1                        1
logging-es-xmwvnorv           1                        1
logging-kibana                1                        1
NAME                          DESIRED                  CURRENT       AGE
logging-curator-1             1                        1             3d
logging-es-6cvk237t-1         1                        1             3d
logging-es-e5x4t4ai-1         1                        1             3d
logging-es-xmwvnorv-1         1                        1             3d
logging-kibana-1              1                        1             3d
NAME                          HOST/PORT                PATH          SERVICE              TERMINATION   LABELS
logging-kibana                kibana.example.com                     logging-kibana       reencrypt     component=support,logging-infra=support,provider=openshift
logging-kibana-ops            kibana-ops.example.com                 logging-kibana-ops   reencrypt     component=support,logging-infra=support,provider=openshift
NAME                          CLUSTER-IP               EXTERNAL-IP   PORT(S)              AGE
logging-es                    172.24.155.177           <none>        9200/TCP             3d
logging-es-cluster            None                     <none>        9300/TCP             3d
logging-es-ops                172.27.197.57            <none>        9200/TCP             3d
logging-es-ops-cluster        None                     <none>        9300/TCP             3d
logging-kibana                172.27.224.55            <none>        443/TCP              3d
logging-kibana-ops            172.25.117.77            <none>        443/TCP              3d
NAME                          READY                    STATUS        RESTARTS             AGE
logging-curator-1-6s7wy       1/1                      Running       0                    3d
logging-deployer-un6ut        0/1                      Completed     0                    3d
logging-es-6cvk237t-1-cnpw3   1/1                      Running       0                    3d
logging-es-e5x4t4ai-1-v933h   1/1                      Running       0                    3d
logging-es-xmwvnorv-1-adr5x   1/1                      Running       0                    3d
logging-fluentd-156xn         1/1                      Running       0                    3d
logging-fluentd-40biz         1/1                      Running       0                    3d
logging-fluentd-8k847         1/1                      Running       0                    3d

다음과 유사한 설정으로 끝나야 합니다.

$ oc get pods -o wide

NAME                          READY     STATUS      RESTARTS   AGE       NODE
logging-curator-1-6s7wy       1/1       Running     0          3d        ip-172-31-24-239.us-west-2.compute.internal
logging-deployer-un6ut        0/1       Completed   0          3d        ip-172-31-6-152.us-west-2.compute.internal
logging-es-6cvk237t-1-cnpw3   1/1       Running     0          3d        ip-172-31-24-238.us-west-2.compute.internal
logging-es-e5x4t4ai-1-v933h   1/1       Running     0          3d        ip-172-31-24-235.us-west-2.compute.internal
logging-es-xmwvnorv-1-adr5x   1/1       Running     0          3d        ip-172-31-24-233.us-west-2.compute.internal
logging-fluentd-156xn         1/1       Running     0          3d        ip-172-31-24-241.us-west-2.compute.internal
logging-fluentd-40biz         1/1       Running     0          3d        ip-172-31-24-236.us-west-2.compute.internal
logging-fluentd-8k847         1/1       Running     0          3d        ip-172-31-24-237.us-west-2.compute.internal
logging-fluentd-9a3qx         1/1       Running     0          3d        ip-172-31-24-231.us-west-2.compute.internal
logging-fluentd-abvgj         1/1       Running     0          3d        ip-172-31-24-228.us-west-2.compute.internal
logging-fluentd-bh74n         1/1       Running     0          3d        ip-172-31-24-238.us-west-2.compute.internal
...
...

기본적으로 각 ES 인스턴스에 할당된 RAM의 크기는 16GB입니다. openshift_logging_es_memory_limitopenshift-ansible 호스트 인벤토리 파일에서 사용되는 매개 변수입니다. 이 값의 절반은 개별 elasticsearch Pod java 프로세스 힙 크기로 전달됩니다.

EFK 설치에 대해 자세히 알아보기.

37.2.1. 대규모 클러스터

100개 이상의 노드에서 먼저 docker pull registry.redhat.io/openshift3/logging-fluentd:v3.11 에서 로깅 이미지를 미리 가져오는 것이 좋습니다. 로깅 인프라 Pod(Elasticsearch, Kibana 및 Curator)를 배포한 후 노드 레이블은 한 번에 20개의 노드 단계에서 수행해야 합니다. 예를 들면 다음과 같습니다.

간단한 반복문 사용:

$ while read node; do oc label nodes $node logging-infra-fluentd=true; done < 20_fluentd.lst

다음 작업도 수행합니다.

$ oc label nodes 10.10.0.{100..119} logging-infra-fluentd=true

그룹의 노드에 레이블을 지정하면 OpenShift 로깅에서 사용하는 DaemonSet이 진행되므로 이미지 레지스트리와 같은 공유 리소스의 경합을 방지하는 데 도움이 됩니다.

참고

"CrashLoopBackOff | ImagePullFailed | Error" 문제가 발생하는지 확인하십시오. oc logs <pod>, oc describe pod <pod>oc get event 는 유용한 진단 명령입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.