이 가이드는 Kubernetes 환경에서 듀얼 스택(IPv4 및 IPv6) 네트워킹을 지원하기 위한 뉴렐릭 Synthetics 작업 관리자의 설정 및 배포를 다룹니다.
전제 조건
시작하기 전에 다음 사항을 확인하세요.
Kubernetes cluster: 듀얼 스택 지원이 활성화된 실행 중인 쿠버네티스 클러스터(버전 1.20 이상 권장)
Helm: 컴퓨터에 Helm 3.x가 설치되어 있어야 합니다.
kubectl: 클러스터와 통신하도록 설치 및 구성된 kubectl
Docker: 듀얼 스택 지원과 함께 도커가 설치되어 실행 중(Minikube 또는 유사한 로컬 클러스터를 사용하는 경우)
Permissions: 네임스페이스를 생성하고 리소스를 배포할 수 있는 Cluster 관리자 권한
Private location key: UI에서 가져온 뉴렐릭 프라이빗 로케이션 키
Public images: 듀얼 스택 지원을 위해서는 도커 허브에서 사용할 수 있는 다음 이미지 버전 이상이 필요합니다:
- 작업 관리자
519이상:newrelic/synthetics-job-manager - Ping 런타임
1.65.0이상:newrelic/synthetics-ping-runtime - Node API 런타임
rc1.15이상:newrelic/synthetics-node-api-runtime - 노드 브라우저 런타임
rc1.15이상:newrelic/synthetics-node-browser-runtime
- 작업 관리자
인프라 검증
진행하기 전에, 쿠버네티스 클러스터와 기반 인프라가 듀얼 스택 네트워킹을 지원하는지 확인하세요.
ping6 ipv6.google.com또는ping -6 ipv6.google.com, 혹은 사용 중인 머신에 해당하는 명령을 실행하여 호스트에서 IPv6 연결을 테스트합니다.쿠버네티스 클러스터 듀얼 스택 지원 확인:
bash$kubectl get nodes -o jsonpath='{.items[*].status.addresses[?(@.type=="InternalIP")].address}'클러스터에 듀얼 스택이 활성화된 경우 IPv4 및 IPv6 주소를 모두 반환해야 합니다.
도커 듀얼 스택 설정을 확인합니다(해당하는 경우):
bash$docker network inspect bridge | grep IPv6중요
유효성 검사에 실패하면 네트워크 인프라, VPC, 서브넷 및 보안 그룹이 IPv4 및 IPv6 트래픽을 모두 허용하도록 구성되어 있는지 확인하십시오. 계속하기 전에 쿠버네티스 클러스터가 듀얼 스택 지원으로 구성되어 있어야 합니다.
도커가 듀얼 스택을 위한 준비가 되었는지 확인
Kubernetes 클러스터가 Docker(예: Minikube, kind 또는 Docker Desktop)에서 실행되는 경우, Docker가 IPv4 및 IPv6 트래픽을 모두 처리하도록 구성되어 있는지 확인하십시오. 도커에 IPv6가 활성화되어 있는지 확인하려면 다음을 실행합니다:
$docker info | grep -i ipv6출력에서 IPv6가 활성화되었음을 확인해야 합니다. 그렇지 않은 경우, 계속 진행하기 전에 도커 문서 를 참조하여 듀얼 스택 지원을 활성화하십시오.
Helm을 사용하여 설치하세요
뉴렐릭 Helm 차트를 사용하여 신세틱 작업 관리자를 배포하십시오.
뉴클릭 Helm 다음을 추가하세요.
bash$helm repo add YOUR_REPO_NAME https://helm-charts.newrelic.com$helm repo update신세틱 작업 관리자 설치:
bash$helm install YOUR_JOB_MANAGER_NAME YOUR_REPO_NAME/synthetics-job-manager \>-n YOUR_NAMESPACE \>--set synthetics.privateLocationKey=YOUR_PRIVATE_LOCATION_KEY파드가 가동되어 실행 중인지 확인합니다:
bash$kubectl get -n YOUR_NAMESPACE pods
설치 확인
신세틱스 작업 관리자가 IPv4 및 IPv6 리소스 모두에 액세스할 수 있는지 확인하십시오.
패드 상태 확인:
bash$kubectl get pods -n YOUR_NAMESPACE모든 파드는
Running상태를 표시해야 합니다.작업 관리자 로그 보기:
bash$kubectl logs -n YOUR_NAMESPACE <job-manager-pod-name>파드 내에서 듀얼 스택 연결을 테스트합니다:
bash$# Test IPv6$kubectl exec -n YOUR_NAMESPACE <pod-name> -- curl -6 -v http://ipv6.google.com$$# Test IPv4$kubectl exec -n YOUR_NAMESPACE <pod-name> -- curl -4 -v http://google.com두 curl 명령이 모두 성공하면, 듀얼 스택 설정이 올바르게 작동하는 것입니다.
one.newrelic.com > All capabilities > Synthetic monitoring > Private locations(으)로 이동하여 뉴렐릭 UI에서 프라이빗 로케이션 상태를 확인합니다. 프라이빗 로케이션이 정상으로 표시되어야 합니다.
문제점 해결
듀얼 스택 설정에 문제가 발생하면:
파드가 IPv6 주소에 도달할 수 없습니다:
- 쿠버네티스 클러스터에 듀얼 스택 지원이 활성화되어 있는지 확인합니다.
- 보안 그룹 및 네트워크 정책이 IPv4 및 IPv6 트래픽을 모두 허용하는지 확인하십시오.
이미지를 찾을 수 없음:
- 클러스터가 도커 Hub에 액세스하여 공개 런타임 이미지를 가져올 수 있는지 확인합니다.
kubectl describe pod <pod-name> -n YOUR_NAMESPACE을(를) 사용하여 풀 오류를 검사합니다.
작업 관리자가 연결되지 않음:
- 프라이빗 로케이션 키가 올바른지 확인합니다.
- 연결 오류에 대한 작업 관리자 로그를 확인합니다:
kubectl logs -n YOUR_NAMESPACE <job-manager-pod-name>
추가 문제 해결 지침은 프라이빗 로케이션 문제 해결을 참조하세요.
다음은 뭐지?
Kubernetes로 듀얼 스택이 활성화된 프라이빗 로케이션을 설정한 후 다음을 수행할 수 있습니다:
- 프라이빗 로케이션을 사용하여 IPv4 및 IPv6 엔드포인트를 모두 테스트하는 신세틱 모니터를 생성 합니다.
- 고급 옵션을 위해 작업 관리자 설정을 구성 하세요.
- 프라이빗 로케이션 상태 및 성능 모니터링