Helm과 함께 Snyk Controller 설치(Azure 및 구글 클라우드 플랫폼)
Kubernetes 워크로드에 대한 취약성 세부 정보를 받으려면 Snyk 관리자가 먼저 클러스터에 Snyk Controller를 설치해야 합니다. Snyk Controller는 Helm Hub에서 발행됩니다.
설치 단계는 다음을 다룹니다:
대부분의 Kubernetes 플랫폼에 대한 Snyk 통합
Amazon Elastic Kubernetes Service (EKS) 클러스터에서 Amazon Elastic Container Registry (ECR)를 사용할 때 통합을 위한 추가 구성 단계
Helm을 사용한 Snyk Controller의 필수 설치 단계
다음과 같이 Helm을 사용하여 Snyk Controller를 설치합니다:
Kubernetes 환경에 접속하십시오. 다음 명령을 실행하여 Snyk 차트 리포지토리를 Helm에 추가하십시오:
helm repo add snyk-charts https://snyk.github.io/kubernetes-monitor --force-update리포지토리가 추가된 후, Snyk Controller를 위한 고유한 이름 공간을 생성하십시오:
kubectl create namespace snyk-monitor
Snyk 모니터에는 다음이 필요합니다:
Snyk 통합 ID
서비스 계정 토큰
dockercfg.json 파일
공용 컨테이너 레지스트리 설치
공용 컨테이너 레지스트리를 설치하려면 snyk-monitor라는 Kubernetes 시크릿을 생성해야 합니다. 이 시크릿에는 Snyk 통합 ID와 서비스 계정 토큰이 포함되어 있어야 합니다.
이를 위해 다음 명령을 실행하십시오:
kubectl create secret generic snyk-monitor -n snyk-monitor \
--from-literal=dockercfg.json={} \
--from-literal=integrationId=abcd1234-abcd-1234-abcd-1234abcd1234 \
--from-literal=serviceAccountApiToken=bdca4123-dbca-4343-bbaa-1313cbad4231Snyk Helm 차트 설치
helm upgrade --install snyk-monitor snyk-charts/snyk-monitor \
--namespace snyk-monitor \
--set clusterName="Production cluster"자체 Snyk 인스턴스를 실행 중인 경우 컨트롤러를 설치할 때 API 엔드포인트를 지정해야 합니다.
다음 명령에서는 Snyk 인스턴스의 전체 호스트 이름을 제공하십시오.
helm upgrade --install snyk-monitor snyk-charts/snyk-monitor \
--namespace snyk-monitor \
--set clusterName="Production cluster" \
--set integrationApi=https://<server>/kubernetes-upstream"Production cluster"를 모니터링 중인 클러스터에 기반하여 이름으로 바꿔야 합니다. 나중에 Snyk에서 워크로드를 찾을 때 이 레이블을 사용할 수 있습니다.클러스터 이름에
/(슬래시)를 사용하는 것은 허용되지 않습니다. 클러스터 이름에 포함된 모든/은 제거됩니다.업데이트 시 클러스터의 이름을 변경하지 않으려면 Helm의
--reuse-values옵션을 사용할 수 있습니다. 업그레이드할 때 Helm은 마지막 릴리스에서 값들을 재사용하고--set및-f를 사용하여 명령 줄에서 재정의된 값을 병합합니다.
관리 ID를 사용하여 AKS와 ACR 통합
다음을 수행하려면:
AKS를 사용하여 ACR에 액세스 권한 부여를 위해 사용자가 관리하는 ID를 사용하고 있고 VM 스케일 세트에
AcrPull역할을 할당하는 여러 ID가 있는 경우, 사용할 원하는 사용자가 관리 ID의 클라이언트 ID도 지정해야 합니다. 이 값을.Values.azureEnvVars에서 오버라이드로 설정해야 합니다:azureEnvVars: - name: AZURE_CLIENT_ID value: "abcd1234-abcd-1234-abcd-1234abcd1234"위의 YAML을
override.yaml에 저장한 후, 다음 명령을 실행하십시오:helm upgrade --install snyk-monitor snyk-charts/snyk-monitor \ --namespace snyk-monitor \ -f override.yaml
기본적으로 이 값은 빈 문자열로 설정되어 있으며 사용되지 않습니다.
기존 설치 업데이트
기존 고객이며 Snyk Controller를 업데이트하는 경우:
서비스 계정 토큰을 생성하십시오. 자세한 내용은 Snyk Controller 설치 전제 조건을 참조하십시오. 이 토큰은
snyk-monitor시크릿에 저장됩니다.기존
snyk-monitor시크릿을 삭제하십시오:kubectl delete secret snyk-monitor -n snyk-monitor필수 설치 단계를 따르십시오. 최신 Helm 차트 버전을 얻으려면 다음 명령을 실행하십시오:
helm repo add snyk-charts https://snyk.github.io/kubernetes-monitor --force-update
Last updated