운영 및 유지보수
Harbor 취약점 스캔 자동화
# harbor-scan-cronjob.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: harbor-vulnerability-scan
namespace: harbor
spec:
schedule: "0 2 * * *" # 매일 오전 2시
jobTemplate:
spec:
template:
spec:
containers:
- name: scanner
image: curlimages/curl:latest
command:
- /bin/sh
- -c
- |
# 모든 프로젝트의 이미지 스캔 트리거
for project in $(curl -sk -u admin:$HARBOR_PASSWORD \
"https://harbor.internal.company.io/api/v2.0/projects" | \
jq -r '.[].name'); do
for repo in $(curl -sk -u admin:$HARBOR_PASSWORD \
"https://harbor.internal.company.io/api/v2.0/projects/$project/repositories" | \
jq -r '.[].name'); do
# 최신 태그 스캔
curl -sk -X POST -u admin:$HARBOR_PASSWORD \
"https://harbor.internal.company.io/api/v2.0/projects/$project/repositories/${repo#*/}/artifacts/latest/scan"
done
done
env:
- name: HARBOR_PASSWORD
valueFrom:
secretKeyRef:
name: harbor-admin-secret
key: password
restartPolicy: OnFailure데이터베이스 백업 절차
Prometheus 메트릭 수집
Grafana 대시보드 쿼리 예시
Direct Connect 성능 검증
인증서 갱신 관리
Ingress 구성
ALB Ingress (ip target mode)
Cilium Ingress Controller
Cilium Gateway API
LoadBalancer IPAM (Cilium)
로드 밸런싱
NLB (ip target mode)
Cilium LB + BGP
애드온 상세 설정
CloudWatch Observability Agent
EKS Pod Identity Agent
혼합 모드 웹훅 운영
CoreDNS 배치
애드온별 nodeAffinity 설정 가이드
애드온
권장 배치
이유
일반적인 문제 해결
ImagePullBackOff 진단
DNS 해석 문제
노드 연결 문제
마지막 업데이트