Kubernetes에서 컨테이너 상태를 체크할 때 livenessProbe, readinessProbe, startupProbe 세 가지 방식이 있습니다.이 중에서 가장 유연하게 쓸 수 있는 게 바로 exec 방식이 있는데 직접 컨테이너 안에서 명령어를 실행해서 그 결과를 기반으로 상태를 판단하는 방식인데 잘 쓰면 아주 강력하고 상황에 맞게 커스터마이징도 쉽습니다.본문에서는 exec 을 통한 예제에 대해 작성했습니다. 1. 헬스체크란?Kubernetes는 총 3가지 종류의 헬스체크(Probe)를 제공합니다종류목적실패 시 행동StartupProbe컨테이너가 처음 정상적으로 시작되었는지 확인실패 시 재시작 (단, Readiness/Liveness보다 우선함ReadinessProbe트래픽을 받을 준비가 되었..

1. Fielddata란?Elasticsearch에서 text 타입의 필드는 기본적으로 정렬(Sort)이나 집계(Aggregation)에 사용할 수 없습니다.이를 가능하게 하려면 Fielddata 기능을 활성화해야 합니다.Fielddata의 역할text 필드에서 정렬 및 집계를 수행할 수 있도록 데이터 구조를 변환대용량 데이터에서도 빠른 검색 및 분석 가능Fielddata의 단점메모리 사용량 증가 : Heap 영역에 데이터를 적재하므로 JVM 메모리 부담이 커짐성능 저하 가능성 : 대량의 데이터를 처리할 경우 OutOfMemory(OOM) 발생 가능 2. Elasticsearch 8.12에서 Fielddata 해제 이슈Elasticsearch 8.12 버전부터 Fielddata의 자동 해제(Expire)..
기본적으로 Fortigate VPN 에 연결 할 경우 8 시간이 지날 경우 재인증을 위해 VPN이 끊어짐 하지만, 회사에서 점심 시간 포함하여 최소 9시간이 필요하며 상황에 따라 그 이상이 필요해짐 장비 구성 정보 모델명 : Fortigate 60E 펌웨어 버전 : Firmware 5.x, 6.x, 7.x. 기본 설정 확인 foritgate # config vpn ssl settings foritgate (settings) # get reqclientcert : disable banned-cipher : ssl-insert-empty-fragment: enable https-redirect : disable x-content-type-options: enable ssl-client-renegotiatio..
개요 Kubespray 을 통해 Kubernetes 를 구성 할 때 네트워크 관련에서 별다른 설정을 하지 않고 운영 할 경우 아래와 같은 메시지를 확인 할 수 있다. $ kubectl get event LAST SEEN TYPE REASON OBJECT MESSAGE 38s Normal CIDRNotAvailable node/node65.k8s Node node65.k8s status is now: CIDRNotAvailable 48s Normal CIDRNotAvailable node/node66.k8s Node node66.k8s status is now: CIDRNotAvailable 37s Normal CIDRNotAvailable node/node67.k8s Node node67.k8s stat..
안녕하세요. DC/OS에서 서비스 테스트를 할 때 Docker run 의 옵션 등이 필요하여 찾아보고 정리한 내용 입니다. 미리 mesos 혹은 marathon 을 사용해보신분들은 이미 알고 계셨을 내용이기도 합니다. · 개요 DC/OS에서 구동되는 서비스에 추가적인 호스트 등록이 필요한 상황이였습니다. 이를 위해 Dockerfile 을 작성하고 아래와 같은 형식으로 도커 이미지를 빌드한 뒤 컨테이너 실행 할 때 /etc/hosts 파일이 초기화되어 의미가 없었습니다. RUN echo 1.1.1.1 seob >> /etc/hosts 위와 같은 문제를 해결하기 위해서 CMD 를 어플리케이션 실행 명령이 아닌 스크립트를 구동하도록 변경했습니다. · run.sh cat /root/hosts >> /etc/ho..