시스템 요구사항
이 가이드는 Kubernetes 클러스터에 DoveRunner Mobile App Security (on-premise 버전)를 설정하는 설치 과정을 안내합니다. 이 가이드는 설치에 필요한 모든 요구사항과 필요한 자산을 설명하고, Helm을 사용한 설치를 위해 노드를 설정하는 방법, DoveRunner Mobile App Security on-premise 버전을 설치하는 방법을 알려주며, 서버 유지 관리를 계획하는 데 도움을 줍니다.
이 섹션은 DoveRunner Mobile App Security 설치에 필요한 전제조건을 설명합니다.
- 먼저 MySQL Database(5.6.10+) 또는 기타 플랫폼별 DB 인스턴스 형태의 데이터베이스 인스턴스를 구성해야 합니다.
- 해당 DB의 서비스를 생성하고 Kubernetes 환경 내에서 액세스합니다.
- 둘째, ELK 스택 또는 elastic.co나 AWS의 Elasticsearch 인스턴스 또는 기타 클라우드 제공업체와 같은 관리형 서비스 ELK 스택을 구성해야 합니다.
- 서비스를 생성하고 Kubernetes 환경 내에서 액세스합니다.
- Kubernetes용 Helm 패키지 매니저를 설치합니다.
- 필요한 경우 외부 DNS를 설정합니다. DoveRunner Mobile App Security는 다음 용도로 3개의 도메인 URL이 필요합니다:
- API (Endpoints)
- ADC (개발자 웹 콘솔)
- LogScheduler (모바일 디바이스에서 리포트 수집)
이 섹션은 docker tarball을 사용한 on-prem 버전의 설치를 설명합니다.
- 먼저 Kubernetes 클러스터를 실행하고 있는 호스트에 docker tarball을 다운로드합니다.
- 다음 명령을 사용하여 docker tarball의 압축을 해제합니다.
$ docker load < docker-tarball.tgz$ docker images ( 시스템에 로드된 이미지를 확인할 수 있습니다)
- 이 이미지를 임의의 docker 레지스트리에 업로드할 수 있습니다. ECR, GCR, ACR 또는 K8이 이러한 이미지를 환경으로 가져올 수 있는 기타 docker 레지스트리일 수 있습니다.
- 이미지 버전으로 YAML 파일을 업데이트하고 DoveRunner Mobile App Security on-prem 버전을 배포합니다.
지원되는 클라우드 환경
Section titled “지원되는 클라우드 환경”- Amazon Web Service
- Google Cloud Platform
- Microsft Azure
Kubernetes 설정 가이드
Section titled “Kubernetes 설정 가이드”Kubernetes 클러스터를 설정하고 Persistent Volume 또는 DNS 지원에 필요한 경우 일부 드라이버를 설치합니다.
- AWS에서 Persistent Volume의 경우, EFS용 AWS EFS 드라이버 또는 EBS 볼륨용 AWS EBS 드라이버를 설치해야 합니다. 아래 문서를 참조하세요.
EKS용 EFS 드라이버 설치:
- 아래 셸 명령을 사용하여 EKS용 iam 설정
$ curl -o iam-policy-example.json \ https://raw.githubusercontent.com/kubernetes-sigs/aws-efs-csi-driver/v1.3.2/docs/iam-policy-example.json
$ aws iam create-policy --policy-name AmazonEKS_EFS_CSI_Driver_Policy \ --policy-document file://iam-policy-example.json
$ eksctl utils associate-iam-oidc-provider --region=<region>--cluster=<cluster-name> --approve
$ eksctl create iamserviceaccount \
--name efs-csi-controller-sa \
--namespace kube-system \
--cluster <cluster-name> \
--attach-policy-arn arn:aws:iam::<ACCOUNT_ID>:policy/AmazonEKS_EFS_CSI_Driver_Policy \
--approve \
--override-existing-serviceaccounts \
--region <region>
$ helm repo add aws-efs-csi-driver https://kubernetes-sigs.github.io/aws-efs-csi-driver/
$ helm repo update
$ helm upgrade -i aws-efs-csi-driver aws-efs-csi-driver/aws-efs-csi-driver \
--namespace kube-system \
--set image.repository=602401143452.dkr.ecr.ap-northeast-1.amazonaws.com/eks/aws-efs-csi-driver \
--set controller.serviceAccount.create=false \
--set controller.serviceAccount.name=efs-csi-controller-sa
$ kubectl get pod -n kube-system -l "app.kubernetes.io/name=aws-efs-csi-driver,app.kubernetes.io/instance=aws-efs-csi-driver"
참고: EFS 드라이버용 컨테이너 이미지 저장소 설치 단계. 이 이미지 저장소는 지역마다 다릅니다. 해당 지역에 대한 이 문서를 따르세요. Amazon EKS add-on container image addresses - Amazon EKS
AWS 문서에서 가져온 단계입니다. 이 문서를 참조하세요: Amazon EFS CSI driver - Amazon EKS
Amazon EBS CSI driver - Amazon EKS
- GKE에서 Persistent Volume의 경우, 일부 공유 볼륨이 필요하므로 Filestore Service를 사용하여 NFS 볼륨 형태로 Persistent Volume을 생성할 수 있습니다. 이를 위해 별도의 드라이버를 설치할 필요가 없습니다.
선택사항: AWS Route 53용 외부 DNS 설정:
Section titled “선택사항: AWS Route 53용 외부 DNS 설정:”동적 외부 DNS의 경우, AWS Route 53용 external-DNS 드라이버를 설치할 수 있습니다.