kubernetes YAML 매니페스트를 사용하여 도커 컨테이너를 배포하고 포트 매핑/전달을 수행하는 방법

kubernetes YAML 매니페스트를 사용하여 도커 컨테이너를 배포하고 포트 매핑/전달을 수행하는 방법

Docker 컨테이너에 대한 포트 매핑/전달과 함께 아래 docker 명령을 Kubernetes YAML 파일로 변환하는 데 도움을 주세요.

 # docker run -p 5775:5775/udp -p 6831:6831/udp -p 6832:6832/udp -p 5778:5778 -p 16686:16686 -p 14268:14268 jaegertracing/all-in-one:latest

아래 구성을 시도했습니다.

여기에 이미지 설명을 입력하세요

그러나 아무런 결과도 얻지 못하고 있습니다.

위의 배포 파일이 잘못된지, 그리고 그렇다면 결과를 얻기 위해 여기에서 수행할 수 있는 가능한 변경 사항은 무엇인지 알려줄 전문가가 필요합니다. 다른 여러 조합을 시도했지만 결과가 나오지 않습니다.

참고: 컨테이너가 배포되지만 포트 매핑/전달이 작동하지 않습니다. 그것이 내가 갇혀서 도움을 구하는 곳입니다.

답변1

NodePort 서비스를 지정하면 Kubernetes는 모든 노드에 포트를 할당합니다. 선택한 NodePort는 생성 후 서비스 사양에 표시됩니다. 또는 서비스를 생성하는 동안 사양에서 NodePort로 사용할 특정 포트를 지정할 수 있습니다. 특정 NodePort를 지정하지 않으면 Kubernetes 클러스터에 구성된 범위(기본값: 30000-32767)에서 포트가 무작위로 선택됩니다.

Kubernetes에서는 # 포트 레이블을 사용하여 포트를 정의할 수 있습니다. 이 레이블은 배포의 포트 구성 아래에 있습니다. 구성에 따라 원하는 포트 수를 간단히 정의할 수 있습니다. 다음 예에서는 두 개의 포트를 정의하는 방법을 보여줍니다.

apiVersion: v1 
kind: Service
 Metadata:
      name: my-service 
Spec:
  selector: 
     app: MyApp 
  Ports:
    - name: http
      protocol: TCP
      port: 80 
      targetPort: 9376 
    - name: https
      protocol: TCP
      port: 443 
      targetPort: 9377

로컬 호스트로 포트 전달을 수행하려면 다음 명령을 실행하십시오.

 kubectl port-forward <pod-name> <locahost-port>:<pod-port>

자세한 내용은 다음 링크를 참조하세요.Docker 컨테이너 포트 전달그리고노드 포트.

관련 정보