12.7. Fabric8 Karaf 상태 점검 활성화
fabric8-karaf-check
를 시작 기능으로 설치하는 것이 좋습니다. 활성화되면 Karaf 서버에서 준비 및 활성 프로브에 Kubernetes에서 사용할 수 있는 http://0.0.0.0:8181/readiness-check
및 http://0.0.0.0:8181/health-check
URL을 노출할 수 있습니다.
이러한 URL은 다음 사항이 사실인 경우에만 HTTP 200 상태 코드를 사용하여 응답합니다.
- OSGi Framework가 시작되었습니다.
- 모든 OSGi 번들이 시작됩니다.
- 모든 부팅 기능이 설치됩니다.
- 배포된 모든 Blue Cryostat 번들은 생성된 상태에 있습니다.
- 배포된 모든 SCR 번들은 활성, 등록 또는 팩토리 상태에 있습니다.
- 모든 웹 번들은 웹 서버에 배포됩니다.
- 생성된 모든 Camel 컨텍스트는 started 상태에 있습니다.
프로세스
프로젝트의
pom.xml
을 열고startupFeatures
섹션에fabric8-karaf-checks
기능을 추가합니다.pom.xml
<startupFeatures> ... <feature>fabric8-karaf-checks</feature> ... </startupFeatures>
fabric8-maven-plugin:resources
목표는fabric8-karaf-checks
기능을 사용하는지 여부를 감지하고 컨테이너 구성에 준비 및 활성 프로브를 자동으로 추가합니다.
12.7.1. 상태 점검 구성
기본적으로 fabric8-karaf-checks
끝점은 포트 8181
에서 실행되는 내장 HTTP 서버 엔진(Undertow)에 등록됩니다. 컨테이너에서 장기 실행 중인 다른 HTTP 프로세스에서 상태 및 준비 상태 점검 요청이 차단되지 않도록 하려면 별도의 Cryostat 컨테이너에 엔드포인트를 등록할 수 있습니다.
이러한 검사는 다음 속성을 설정하여 etc/io.fabric8.checks.cfg
파일에서 구성할 수 있습니다.
-
httpPort
: 이 속성이 지정되고 유효한 포트 번호인 경우readiness-check
및health-check
끝점이 separate instance of Cryostat 서버에 등록됩니다. -
readinessCheckPath
및healthCheckPath
속성을 사용하면 준비 및 상태 점검에 사용할 수 있는 실제 URI를 구성할 수 있습니다. 기본적으로 이 값은 이전 값과 동일합니다.
이러한 속성은 Fuse-Karaf를 시작한 후 변경할 수 있지만 박스 외부에서 실행 중인 fabric8-karaf-checks
기능을 사용하려는 고객이 사용하는 사용자 지정 Karaf distro의 일부인 etc/io.fabric8.checks.cfg
파일에서 지정할 수도 있습니다.
다음 예제에서는 etc/io.fabric8.checks.cfg
파일의 상태 및 준비 상태 속성의 구성을 보여줍니다.
예
httpPort = 8182 readinessCheckPath = /readiness-check healthCheckPath = /health-check