크레이지 크레이지 슬롯

슬롯 나라-온라인 슬롯 사이트

CDK Global

CDK의 Docker의 Java 모니터링 메커니즘

CDK Global의 디지털 마케팅 부서는 차세대 인프라에 대한 컨테이너화 된 접근 방식으로 이동했습니다.
회사는 컨테이너에서 Java 응용 프로그램을 모니터링하는 방법에 대한 도전이있었습니다.
이 기사는 크레이지 슬롯 사용의 문제와 예에 대한 세부 사항을 소개합니다.

CDK

CDK Global은 북아메리카, 유럽, 중동, 아프리카, 아시아 태평양 및 남미 전역의 27,000 개 이상의 자동차 딜러, 트럭, 오토바이, 선박, 레크리에이션 차량 및 중장비에 통합 기술 솔루션을 제공하는 회사입니다.
CDK Global에는 파트너에게 디지털 마케팅 솔루션을 제공하는 부서가 있습니다.
CDK의 선임 엔지니어 인 Branden Makana는 다음과 같이 설명합니다.

우리는 고객에게 엔드 투 엔드 고객 경험을 향상시킬 수있는 기술을 제공합니다.
웹 사이트에서 딜러 로트에 이르기까지 모든 "일관되고 귀중한 경험"을 상상해보십시오.

도전 : 컨테이너 용 빅 데이터

Branden은 앞서 언급 한 CDK 부서에 대해 자세히 설명합니다.

CDK는 전 세계 자동차 딜러가 필요로하는 포괄적 인 기술을 제공합니다.
내 부서는 개인화 된 소비 경험을 전문으로합니다.
본질적으로 내부 데이터 분석 부서로 생각해야한다고 생각합니다.
기술 중심 회사로서 우리는 차세대 애플리케이션 인프라를위한 비즈니스 부서 전체에 공통 플랫폼을 원했습니다.

이것은 우리가 제공하는 서비스 및 응용 프로그램의 다양성을 고려하면 매우 어려운 일이었습니다.
그러나 우리의 데이터 분석 부서는이 도전에 가장 적합한 출발점이었습니다.
우리는 두 개의 환경과 두 개의 데이터 센터가있었습니다.
우리는 맞춤형 PAA를 사용했지만 차세대 기술과 일치하지는 않았습니다.
그래서 우리는 CoreOS를 사용하여 새로운 컨테이너 인프라 테스트를 시작했습니다.
나중에 Docker에 대해 이야기하겠습니다. 그러나 응용 프로그램에 대해 이야기하겠습니다.

많은 CDK 응용 프로그램은 Java 기반이었습니다.
브랜든이 말했다 :

데이터 처리 및 ETL 용 응용 프로그램은 Java를 사용하는 웹 응용 프로그램입니다.
일반적으로 나머지 API와 함께 작동하며 프론트 엔드에 nginx를 사용합니다.
많은 PHP 응용 프로그램도 제공합니다.

Branden도 그의 팀에 대해 자세히 설명합니다.

우리 부서에는 10 개의 팀 개발 단위가 있습니다.
우리는 모두 DevOps 모델을 사용합니다.
이는 각 팀이 공유 인프라 내에서 자체 모니터링 데이터에 액세스해야 함을 의미합니다.
이것은 시스템을 모니터링하기로 결정한 이유에 큰 영향을 미칩니다.

컨테이너 모니터링

Branden은 다음과 같이 과거를 되돌아 봅니다.

기존 모니터링 인프라는 Nagios를 사용하여 엔드 포인트를 경고했습니다.
Java Melody는 JMX 메트릭을 보유하는 반면 흑연은 100,000 개가 넘는 통계를 보유합니다.
흑연은 오픈 소스 였지만 워크로드를 고려하면 저렴하지 않았습니다. 또한 흑연의 데이터 보유 기간은 약 2 주 밖에 걸리지 않았습니다.

Branden은 다음과 같이 크레이지 슬롯와의 만남을 되돌아 봅니다.

나는 Coreos Fest에서 크레이지 슬롯를 만났고 크레이지 슬롯는 컨테이너를 모니터링하는 유망한 방법 인 것 같았습니다.
Dockerized 인프라는 상당히 복잡하며 실제로 복잡성을 이해하는 감시 시스템을 갖는 것이 더 낫다고 생각했습니다.
그것이 내가 시도하기로 결정한 강력한 이유입니다.

크레이지 슬롯는 단순히 Docker 컨테이너를 모니터링 할뿐만 아니라 Docker 컨테이너 내부를 자세히 시각화 할 수 있다는 사실에 매우 놀랐습니다.
크레이지 슬롯는 컨테이너 내부에서 실행되는 모든 응용 프로그램을 효과적으로 볼 수 있었기 때문에 엄청나게 강력했습니다.

Branden은 다음과 같이 메트릭의 통합을 설명합니다.

크레이지 슬롯는 메트릭을 정말 쉽게 만들었습니다.
개발 관점에서, 우리는 아무것도 할 필요가 없으며 에이전트를 떨어 뜨리고 실행합니다.
크레이지 슬롯 Metrics Incorporation은 호스트 리소스, 네트워크 사용, 컨테이너 통계 및 응용 프로그램 성능을 포함한 시스템 통화에서 수백 가지 기본 메트릭을 수집합니다.
또한 Java 멜로디 특성을 연결할 필요가 없습니다.
달성 할 수있는 최대 "셀프 서비스"라고 할 수 있습니다.

이전 또는 가입 작업이 필요하지 않습니다. 이것은 생산성을 크게 향상시킬 것입니다.

크레이지 슬롯를 시작한 후, 나는 탐색 페이지에서 많은 시간을 보내고 있다는 것을 깨달았습니다 ...
이것은 문제를 해결하려고 할 때 다양한 각도에서 응용 프로그램 지표를 분석하고 이해하는 직관적 인 방법입니다.
또 다른 유용한 기능은 그룹화입니다.
우리는 Docker 라벨을 사용하여 데이터 센터, 응용 프로그램, 서비스 등과 같은 범주별로 구성합니다.
크레이지 슬롯는 이러한 메타 데이터에 대한 기본 이해를 가지고 있으며 모든 것을 수집합니다.
즉, 언제든지 디스플레이를 전환 할 수 있습니다.
전체 데이터 센터의 성능을보고, APP 자격 뷰로 전환하고 서비스를 격리하는 등 언제든지 빠르게 빠르게 전환 할 수 있습니다.
대시 보드 사용도 증가하고 있습니다.
한 화면에 모든 주요 메트릭을 표시 할 수있는 모니터링 응용 프로그램은 거의 없습니다.
엄청난 양의 데이터에도 불구하고 크레이지 슬롯는 매우 잘 작동합니다.
놀랍게도 크레이지 슬롯는 무제한 데이터를 보유합니다.

컨테이너에서 Java 모니터

우리가 놀랐던 것은 우리가 크레이지 슬롯와 함께 Java 응용 프로그램의 전체 그림을 볼 수 있다는 것입니다.
처음으로 호스트부터 네트워크, 컨테이너, JVM, JMX 및 애플리케이션 메트릭에 이르기까지 모든 것을 중앙 집중식으로 볼 수있었습니다.

컨테이너 내에서 JMX 메트릭을 수집하는 것은 특정 JMX 포트를 열어야하므로 어려울 수 있습니다.
대부분의 경우 개발자는 컨테이너 이미지를 미세 조정하여이를 가능하게해야합니다.
즉, 개발자는 Docker Hub가 제공하는 컨테이너 이미지를 재사용 할 수 없으며이 정보를 클러스터 관리 소프트웨어로 전파해야합니다.
이것은 글로벌 폴링 또는 사이드카 컨테이너를 실행할 때 포트를 노출시키는 것을 의미하며 추가 리소스 및 구성이 필요합니다.

크레이지 슬롯는 JMX 메트릭을 살펴 봅니다.
수출 위치 또는 수출 장소에 관계없이 크레이지 슬롯는 단순히 시스템 호출을보고 수집합니다.
이것은 메트릭을 처리하거나 사이드카 컨테이너를 설정하는 코드를 수정할 필요가 없습니다.
개발자가 기본 인프라에 액세스 할 수없는 경우 다음 버전의 PAA에도 매우 유용합니다.

크레이지 슬롯를 사용하여 많은 문제를 해결했습니다.
예를 들어, 컨테이너가 왜 죽었는지 쉽게 알 수있었습니다.
성능 저하가 관찰되었으며 Docker 컨테이너의 메모리 누출 이벤트와 관련 될 수있었습니다.

조언

Java 앱 및 기타 컨테이너 모니터링을 고려하고 있다면 Branden에게 다음과 같은 조언을 해 보지 않겠습니까?

우선 컨테이너 내부를 볼 수있는 도구가 필요합니다.
이를 위해서는 개발 팀의 많은 작업없이 수행 할 수있는 것이 중요합니다.

두 번째는 모니터링 도구의 목적이 목표와 일치한다는 것입니다.
MR. 브랜든은 그것이 의미하는 바를 설명했다.

우리는 크레이지 슬롯를 사용하여 더 많은 엔터프라이즈 관점을 갖기를 희망합니다.
앞에서 언급했듯이, 우리는 차세대 PAA를 구축하고 있으며 크레이지 슬롯는 중요한 역할을합니다.
내가 가장 좋아하는 것은 개발 팀과 서비스로 데이터를 분리 할 수있는 새로운 팀 기능입니다.
이것은 더 많은 개발 팀이 공유 환경에서 일할 때 특히 유용합니다.
크레이지 슬롯는 향후 필요한 기능의 유형에 대해 신중하며 성장함에 따라 분명히 변화를 시도하고 있습니다.

크레이지 슬롯는 많은 시간과 노력을 절약 할 수있게했습니다.
즉, 좋은 코드를 개발하는 데 집중할 수 있습니다.

페이지 위로 이동