본문으로 건너뛰기
버전: 1.0.4

7.6. 런타임 보안

어떨 때 보는가​

  • 관찰이 정상으로 돌아가고 있는지 확인할 때
  • 이벤트가 보이지 않는 이유를 찾을 때
  • 어떤 추적 정책이 걸려 있고 무엇을 잡는지 확인할 때

런타임 보안이란​

컨테이너가 실행 중에 실제로 하는 일을 관찰하는 기능입니다.

정책 엔진이 배포되기 전에 자원의 설정을 검사한다면, 런타임 보안은 배포된 뒤 그 프로세스가 무엇을 실행하고 어떤 파일을 열고 어디로 접속하는지를 봅니다. 설정이 규칙에 맞아도 실행 중의 행위는 다를 수 있기 때문입니다.

각 노드에서 에이전트가 커널 수준의 동작을 관찰하고, 걸린 것을 이벤트로 남깁니다.

메뉴: 클러스터 > 런타임 보안

이 화면은 관찰이 제대로 되고 있는지와 어떤 정책이 걸려 있는지 를 보는 곳입니다. 수집된 이벤트 자체는 OPENMARU Observability 에서 봅니다.

화면 구성​

위에서부터 세 부분입니다.

런타임 보안 화면
부분보는 것
런타임 보안노드마다 에이전트가 동작하고 있는지
수집 경로이벤트가 생산 · 읽기 · 전송 중 어디까지 갔는지
추적 정책적용된 정책 목록과 정책 세트 맞추기

권한이 없으면 수치 대신 안내가 나옵니다. 이 화면은 각 노드의 에이전트 지표를 직접 읽습니다. 계정에 그 조회 권한이 없으면 읽을 수 없다는 안내가 표시됩니다.

에이전트 상태​

맨 위에 노드 몇 대에서 에이전트가 준비됐는지 표시됩니다. 모든 노드가 정상이면 관찰 중 으로 한 줄만 나오고, 준비되지 않은 노드가 있으면 경고가 나타납니다.

에이전트가 동작하지 않는 노드에서는 이벤트가 나오지 않습니다. 이벤트가 없다는 것이 그 노드에서 아무 일도 없었다는 뜻은 아닙니다.

이벤트가 안 보일 때 가장 먼저 확인할 곳입니다.

수집 경로​

이벤트는 세 단계를 거쳐 OPENMARU Observability 에 도착합니다. 각 단계가 얼마나 처리했는지 표로 보여 줍니다.

단계하는 일
생산노드의 에이전트가 커널에서 관찰한 것을 파일에 기록합니다
읽기로그 수집기가 그 파일을 읽습니다
전송OPENMARU Observability 로 보냅니다
열내용
초당 이벤트최근 처리 속도. 화면에 들어온 직후에는 측정 중… 으로 표시되며 15초 뒤부터 값이 나옵니다
누적 이벤트그 단계가 지금까지 처리한 건수
누적 데이터처리한 양
집계 기간언제부터 센 값인지. 노드마다 기동 시각이 달라 범위로 표시될 수 있습니다

누적값은 단계끼리 비교하지 마십시오. 각 단계는 자기 프로세스가 시작한 때부터 셉니다. 단계 사이를 비교할 때는 초당 이벤트 를 보십시오.

읽기와 전송의 건수 차이는 대부분 전송을 기다리는 양 이며 유실이 아닙니다. 수집기가 이벤트를 모아서 보내기 때문입니다.

COP 자체 구성요소가 있는 네임스페이스의 이벤트는 처음부터 기록하지 않습니다. 발생량의 절반 이상을 차지해 업무 애플리케이션의 행위를 가리기 때문입니다.

수집 경로에 나타나는 안내​

문제가 있으면 표 위에 안내가 나타납니다.

안내뜻조치
이벤트가 생산되는데 수집되지 않습니다에이전트는 기록하는데 수집기가 읽지 않습니다운영자에게 수집기 상태 확인을 요청합니다. 노드 로그가 이미 교체되어 빠진 이벤트는 되찾을 수 없습니다
전송이 밀리고 있습니다보내지 못한 이벤트가 쌓이고 있습니다버퍼가 차면 이벤트가 버려집니다. 전송 대상의 상태를 확인해야 합니다
이벤트가 버려졌습니다버퍼 한도를 넘겨 버려진 이벤트가 있습니다되찾을 수 없습니다. 원인 조치는 운영자에게 문의하십시오

추적 정책​

클러스터에 적용된 정책 목록입니다. 클러스터 전체에 걸리는 정책과 특정 네임스페이스에만 걸리는 정책을 한 표에 함께 보여 줍니다.

열내용
이름정책 이름. 누르면 상세 화면으로 이동합니다
적재정책이 실제로 올라간 노드 수 / 확인한 노드 수
범위클러스터 전체 또는 적용 대상 네임스페이스
출처선택한 정책 세트에 들어 있는 정책인지, 세트 밖에서 추가 한 것인지
차단 여부차단 동작이 있으면 그 동작 이름, 없으면 관찰만
관리 상태설치 도구가 관리 중인지, 콘솔에서 바꾼 것인지
이벤트그 정책이 만든 이벤트를 OPENMARU Observability 에서 봅니다
경과 시간정책을 만든 뒤 지난 시간

적재가 4/6 처럼 모든 노드를 채우지 못하면 강조 표시됩니다. 어느 노드에 올라가지 않았는지 함께 알려 줍니다. 정책이 올라가지 않은 노드에서는 그 정책의 이벤트가 나오지 않습니다.

차단 동작을 가진 정책이 있으면 표 위에 안내가 나타납니다. 차단 정책은 조건에 맞는 프로세스를 종료시키므로, 그대로 두기 전에 적용 범위를 확인하십시오.

정책 세트로 맞추기​

표 위에서 정책 세트를 고르면 그 세트와 지금 클러스터의 차이를 보여 줍니다.

[이 세트로 맞추기] 를 누르면 무엇이 추가되고 무엇이 제거되는지 확인 창에서 먼저 보여 주고, 승인해야 실행합니다. 차이가 없으면 버튼을 누를 수 없습니다.

차이가 있다고 해서 곧 문제인 것은 아닙니다. 정책을 의도적으로 조정했을 수 있습니다.

가장 작은 세트에는 정책이 하나도 없습니다. 그 세트로 맞추면 클러스터 전체에 걸린 정책이 모두 제거됩니다.

콘솔은 제거한 정책을 다시 만들지 못할 수 있습니다. 정책 본문은 설치 도구가 올려 둔 정책 라이브러리에서 가져오므로, 라이브러리에 없는 정책을 되살리려면 설치 작업을 다시 실행해야 합니다. 이 경우 확인 창이 그 사실을 알려 줍니다.

정책 추가​

[정책 추가] 는 두 가지 방법을 제공합니다.

방법설명
정책 라이브러리에서설치 도구가 올려 둔 정책 중 아직 적용하지 않은 것을 골라 추가합니다
직접 작성YAML 로 직접 만듭니다. 기본 본문이 준비되어 있습니다

두 방법 모두 콘솔이 관리하는 정책 으로 표시되어 설치 도구가 건드리지 않습니다.

관리 상태 바꾸기​

관리 상태 열에서 정책을 누가 관리할지 바꿉니다.

버튼결과
콘솔에서 관리설치 도구가 이 정책을 더 이상 갱신하지 않습니다. 콘솔에서 한 변경이 유지됩니다
설치 관리로 되돌리기다음 설치 작업에서 설치 도구가 이 정책을 다시 갱신합니다. 콘솔에서 한 변경은 사라집니다

정책을 콘솔 밖에서 직접 편집하면 다음 설치 때 되돌아갑니다. 콘솔 관리 표시가 붙지 않기 때문입니다. 편집하기 전에 관리 상태를 콘솔로 바꾸십시오.

네임스페이스 범위 정책은 설치 도구가 만들지도 갱신하지도 않으므로 관리 대상 아님 으로 표시되며 이 버튼이 없습니다.

정책이 무엇을 관찰하는지 보기​

정책 이름을 누르면 상세 화면에 이 정책이 관찰하는 것 이 나옵니다. 어떤 커널 동작을 잡는지 한 줄 설명과 함께, 후킹 지점 · 무엇을 잡는가 · 필터 세 칸으로 보여 줍니다.

추적 정책 상세

[셀렉터 n개] 를 누르면 조건을 자세히 볼 수 있습니다. 조건 세트가 여럿이면 그중 하나만 맞아도 걸리고, 한 세트 안의 조건은 모두 맞아야 걸립니다.

조건이 없는 후킹 지점은 해당 커널 동작의 모든 호출을 잡습니다. 이벤트가 많이 발생할 수 있으며, 화면에서도 그렇게 안내합니다.

이벤트 보기​

이 화면은 정책과 수집 상태만 보여 주고, 수집된 이벤트는 OPENMARU Observability 의 런타임 보안 화면에서 봅니다.

누르는 곳이동 결과
정책 행의 이벤트 아이콘그 정책이 만든 이벤트만 걸러서 표시합니다
차단 안내의 무엇이 차단됐는지 보기실제로 차단된 이벤트만 표시합니다

새 탭으로 열립니다. OPENMARU Observability 를 설치하지 않았다면 이 링크는 표시되지 않습니다.

설치되지 않았을 때​

런타임 보안은 선택 설치입니다. 설치하지 않은 클러스터에서는 켜는 방법을 안내하는 화면이 나옵니다. 설치는 운영자가 합니다.

자주 하는 일​

하려는 것방법
관찰이 정상인지 확인맨 위에서 에이전트 준비 상태를, 수집 경로에서 초당 이벤트를 봅니다
이벤트가 안 보이는 이유 찾기에이전트 준비 상태 → 정책의 적재 열 → 수집 경로의 안내 순으로 확인합니다
관찰 범위 넓히기더 큰 정책 세트로 맞추거나 정책 라이브러리에서 추가합니다
특정 정책의 이벤트만 보기그 정책 행의 이벤트 아이콘을 누릅니다
정책을 콘솔에서 고치기관리 상태를 콘솔에서 관리 로 바꾼 뒤 편집합니다
차단 중인 정책 확인표의 차단 여부 열에서 관찰만 이 아닌 행을 봅니다