NfreerCom / servermaster

시스템관리자
MIT License
0 stars 0 forks source link

쿠버네티스에서 우분투를 12000 포트로 접속 가능하게 하고 CrashLoopBackOff이 발생하지 않도록 #65

Open NfreerCom opened 1 year ago

NfreerCom commented 1 year ago

쿠버네티스에서 우분투를 12000 포트로 접속 가능하게 하고 CrashLoopBackOff이 발생하지 않도록 소스를 짜줘 ChatGPT 쿠버네티스에서 우분투를 12000 포트로 접속 가능하게 하고 CrashLoopBackOff이 발생하지 않도록 설정하는 것은 여러 단계로 이루어집니다. 먼저 쿠버네티스에서 우분투를 실행할 수 있는 파드를 생성하고, 파드에 접근하기 위한 서비스를 생성해야 합니다. 그런 다음 파드와 서비스를 연결하고 12000 포트로 트래픽을 라우팅해야 합니다. 또한 CrashLoopBackOff이 발생하지 않도록 파드를 올바르게 구성해야 합니다.

다음은 위의 요구사항을 충족하기 위한 예시 소스 코드입니다. 아래의 YAML 파일을 사용하여 파드와 서비스를 생성할 수 있습니다.

ubuntu-pod.yaml:

yaml Copy code apiVersion: v1 kind: Pod metadata: name: ubuntu-pod spec: containers:

yaml Copy code apiVersion: v1 kind: Service metadata: name: ubuntu-service spec: selector: app: ubuntu-pod ports:

bash Copy code kubectl apply -f ubuntu-pod.yaml kubectl apply -f ubuntu-service.yaml 이제 파드와 서비스가 생성되었으므로, 서비스의 IP 주소와 포트를 통해 파드에 접근할 수 있습니다. 서비스의 IP 주소와 포트는 다음 명령어로 확인할 수 있습니다:

bash Copy code kubectl get service ubuntu-service CrashLoopBackOff 오류를 방지하기 위해 파드 구성을 조정해야 합니다. 이를 위해 파드에 대한 리소스 요구 사항을 적절히 설정하고, 컨테이너의 이미지 및 명령을 올바르게 지정해야 합니다. 위의 예시에서는 파드가 무한 대기하는 컨테이너를 실행하도록 구성되어 있습니다. 실제로는 이러한 설정을 원하는 동작에 맞게 수정해야 합니다.

이러한 작업을 마친 후에는 파드가 CrashLoopBackOff 상태로 전환되지 않고 12000 포트로 접속 가능한 우분투가 실행될 것입니다.

User 터미널 접속은 어떻게 해야돼 ChatGPT 터미널을 사용하여 쿠버네티스 파드에 접속하려면 다음과 같은 명령어를 사용합니다:

bash Copy code kubectl exec -it <파드 이름> -- /bin/bash 여기서 <파드 이름>은 접속하려는 파드의 이름입니다. 예를 들어, 앞서 생성한 파드의 이름이 ubuntu-pod인 경우, 다음 명령어를 사용하여 파드에 접속할 수 있습니다:

bash Copy code kubectl exec -it ubuntu-pod -- /bin/bash 위의 명령어를 실행하면 파드의 터미널에 접속할 수 있습니다. /bin/bash는 파드 내부의 Bash 셸을 실행하는 명령어입니다. 만약 파드 내부에 Bash가 없을 경우, /bin/sh나 다른 사용 가능한 셸을 사용할 수도 있습니다.

터미널에 접속한 후에는 해당 파드 내부에서 작업을 수행할 수 있습니다. 필요한 명령어를 실행하거나 작업을 진행할 수 있습니다. 터미널에서 작업을 마치면 exit 명령어를 사용하여 파드의 터미널 세션을 종료할 수 있습니다.