묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! GitHub Actions으로 CI/CD 시작하기
runs-on 질문
안녕하세요! github actions 강의 수강 중인 학생입니다.push, pull request 이벤트 트리거를 한다는 것은 숙지했는데, YAML을 유심히 보다보니 문득 궁금증이 생겨 질문남깁니다.jobs > pull-requests-job > runs-on : ubuntu-latest를 작성하는데,runs-on에 작성된 우분투라는 것은 github의 운영체제인건가요?
-
미해결대세는 쿠버네티스 (Helm편)
K8s 에서 Service, Pod, Container 의 Port 매핑 질문
안녕하세요 강사님. Helm 강의이긴 하지만 K8s 도 전문적으로 가르치시는 걸로 알고 있어서, K8s 질문을 조금 하게 되었습니다 (정말 주변에 물어볼 사람이 없어서..). Helm 질문이 아니라서 답변해주시기 어려우시다면 이해하겠습니다 ㅠ 기본기적인 질문인데, Service 가 Pod 내 Container 에게 어떻게 통신을 하는지 갑자기 이해가 조금 안됩니다. 다음과 같은 시나리오 두가지가 있다고 해보겠습니다. 1. Pod 내 단일 컨테이너,Service -> spec.ports.targetPort 에 1000 포트로 통신을 전달하도록 설정되어 있음"Service 는 selector 로 어떤 Pod 에게 보내야할지는 이미 알고 있고, Pod 내 targetPort 로 요청을 전달한다" 라고 이해하고 있습니다. Pod -> spec.containers.ports.containerPort 에 2000번 포트를 점유하도록 설정되어 있음>> 이런 시나리오인 경우에도, K8s 는 통신을 정상적으로 앱에 전달하는 것으로 이해하고 있습니다. containerPort 는 사실 큰 역할을 하지 않고, 실제 container 내부 Application 이 1000 포트에 런닝 중이면 된다고 생각했습니다. ( Spring 경우 application.properties 내의 server.port=1000)>> 결론부터 말씀드리면 이게 "왜 가능한지?" 가 궁금합니다. 2. Pod 내 멀티 컨테이너, Service -> 위와 동일Pod -> spec.containers 내부에 1000번 포트, 2000번 포트에 점유하는 두개의 컨테이너를 정의함 (각각 다른 앱)(물론 권장하는 상황은 아님)>> 이런 시나리오인 경우, 해당 Service 에 요청하면 containerPort:2000 인 컨테이너에게 요청을 전달하고, 해당 컨테이너에 점유중인 앱이 통신을 수신하는 것으로 이해했습니다. >> 그럼 지금 1번 시나리오랑 다른 점인데, 멀티 컨테이너와 단일 컨테이너를 사용하는 Pod 간에는 어떤 차이가 존재하는건지 알 수 있을까요?>> 그리고 이런 경우에는 1번 시나리오에서 제가 이해한 컨테이너 내부 App Port 는 어떻게 아는지? 가 궁금합니다 만약 service 내부 containerPort 가 Pod 내 컨테이너가 점유중인 port 가 아닌, container 내부의 App Port 라면, Service 는 "Selector 를 통해 어떤 Pod 로 보내야 하는지 알 뿐 아니라 어떤 Container 로 보내야 하는지도 알고있다" 가 되는데, 이건 아닌 것 같았습니다. 혹시 어렵지 않으시다면, 제가 기본기가 좀 모자라서, 도움 한번만 주시면 정말 감사할 것 같습니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
해당 수업자료 이미지 블로그에 사용
"강의 영상을 캡쳐해서 이미지로 써도 다 상관없으니까 기록으로 남겨보세요" 라고 하셨지만혹시나 한번 더 확인차 블로그에 해당 자료 이미지 사용해도 되는거죠..?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
테스트
kubectl config get-contextskubectl config current-context
-
해결됨CloudNet@와 함께하는 Amazon EKS 기본 강의
원클릭 배포 결과가 다릅니다.
동일한 과정을 거쳐서 원클릭 배포를 실시했는데, 해당 스택만 나타나고 나머지 3개의 스택은 나오지 않았습니다.ec2, vpc, subnet, 보안그룹은 설정이 됐는데,eks 클러스터가 생성되지 않습니다.추가로 해당 명령어를 입력했을 때 값이 존재하지 않는변수도 있는데, 어떻게 해야 정상적인 배포를 할 수 있을까요?
-
미해결대세는 쿠버네티스 (초급~중급편)
vagrant up 명령어 에러
k8s v1.27 버전 설치 (최신, 쉬운설치 버전) - 1.22에서 변경됨으로 작성되어 있는 blog를 참고하며 설치하였습니다.XShell, VirtualBox, Vagrant를 D드라이브에 설치하였으며 k8s 폴더 또한 D드라이브에 설치하였습니다. 이후 curl -O https://kubetm.github.io/yamls/k8s-install/Vagrantfile curl -O https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/vagrant-2.3.4/rockylinux-repo.json vagrant box add rockylinux-repo.json vagrant plugin install vagrant-vbguest vagrant-disksize총 4가지의 명령어를 cmd창에서 실행한 후 vagrant up 명령어를 실행했을 때 진행되다가 k8s-master: Booting VM... 부분에서 다음과 같은 오류 메시지가 출력이 됩니다.
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
Tabby 재실행 시 Time-out
안녕하세요. 예전에도 비슷한 질문이 올라온 것 같은데요.노트북을 껐다가 재시작하고,vagrant up하면, master node와 worker node 3개가 정상적으로 올라오는 것이 보이는데요.Tabby는 접속이 안되네요. (Timed out while waiting for handshake 발생)따른 방법이 있는 것일까요? 감사합니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
nestjs 예제
쭉 결제해서 nestjs 부분만 듣고 있는데, 이번 강의는 nestjs예제가 spring에 비해 부실하네요nestjs 예제도 spring 예제 처럼 추가해줄 수 있나요? 예전에 시간 남을 때, 추가해주신다고 해서 기다리고 다시 들어와봤는데 업데이트가 안되어 있어서 아쉬워요 혹시 계획 있으신가요?
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
vagrant up 에러
안녕하세요.2.4 강의 내용에서 알려주신 대로 MAC Pro M2 노트북에 순서대로 설치하여 진행하고 있는데요. 우선, vagrant up을 하면 아래와 같은 에러가 발생하고요.VM Fusion은 실행되어 cp-k8s는 보이고 나머지는 안보입니다. 그리고 Tabby도 실행되나 프로필에는 cp-k8s도 뜨지 않는 상홥입니다.이 부분이 강의 중간에 언급하신 load 관련 부분인거 같아서 해당 명령어를 치면 아래와 같은 에러가 나옵니다.다만, load 대신 reload로 하면 아래와 같이 에러 없이 넘어가긴 하는데 에러는 여전히 발생합니다.에러 발생 이유를 알려주시면 해결하고 이후 수업을 열심히 듣도록 하겠습니다. 😀 감사합니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
엔서블을 이용하여 톰캣 이미지 배포 후, 되돌리는 방법
배포된 버전에 문제가 발생하여, 이전 배포 버전으로 되돌리고 싶을 경우가 현업에서 발생 가능할 것 같은데요. 이럴 경우에는 어떻게 구성하면, 위 문제를 대비할 수 있을까요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
쿠버네티스 이용시, api gateway 와 service discovery 역할
MSA 학습 후, CI/CD 를 학습중입니다. MSA 학습 시, api gateway 와 service discovery 에 대한 학습 후, 쿠버네티스를 학습하니, spring api gateway 와 eureka 의 역할을 쿠버네티스 환경에서 커버가 되는 것 처럼 보이는데요. 쿠버네티스 환경에서도 여전히 유효한지 궁금합니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
[Ingress - Nginx 강의] Ingress 컨트롤러의 Service 로드밸런싱 관련 질문
안녕하세요. 강사님 Ingress - Nginx 강의를 듣던 중 질문이 생겼습니다. 강의의 5분 20초 내용을 보면, /svc-order URL로 접근을 해서 svc-order 서비스로 연결이 되는 내용이 나오는데요. Ingress rules를 보면 path가 /order 일때, serviceName이 svc-order로 연결이 되도록 되어있는데, 어떻게 /svc-order로 접근을 해서 svc-order 서비스에 연결이 된 것인지 궁금합니다. 혹시 제가 이전에 공부한 내용이 부족하여, 해당 내용을 몰랐다면 어떤 부분을 다시 복습을 해야 할지도 알려주신다면 정말 감사하겠습니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
vagrant up시 인코딩에러
안녕하세요 수업보면서 따라하다가 vagart up 명령어 수행시에 해당 에러가 났는데 윈도우 계정을 영어로도 바꿔보고 폴더경로에 한글이 포함되지 않게 했는데도 해당 오류가 발생하여 문의 남깁니다.
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
빠른 설치 진행중 containerd 설치명령어관련
스크립트 다운받아 보니...containerd repo 설치 하는 명령어가 아래와 같이 되어있는데실제 문서상에는 dnf 가 들어가있고 추가로sudo dnf -y install dnf-plugins-core 도 있던데...이부분은 누락된건가요?? 그냥 아래 명령어로 되는건가요?yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo또 한가지는 강의중에 containerd.io 버전에 대해 언급하신건 들었는데...LTS버전까지는 들어서 알겠는데..실제 설치할 버전확인 하는법에 대해서는 언급이 없었는데...나중에 설명해주신다고 하셨던것도 같고...docker설치하면 거기에서 명령어로 확인할수있다고 검색은 되는데...이건 설치도 전인데 어떻게 파일명까지 사전에 확인이 가능한지요?yum install -y containerd.io-1.6.21-3.1.el8
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
containerd 설치중 cgroup드라이버 관련
설치방법 강의중에 containerd 설치부분에서 cgroup언급부분에서 default를 쓸거기 때문에 containerd는 systemd cgroup드라이버를 설정할필요없이 넘어간다고 말씀하셨는데요~문서에는 kubelet의 디폴트가 cgroupfs인데 단 리눅스배포판의 init시스템이 systemd인경우는 systemd cgroup드라이버를 사용해야한다고 문서에 나와있어서 결국 강사님이 Rocky Linux 8을 사용하시는걸로 아는데 그러면 Rocky Liunx 8의 init 프로세스는 systemd라서 kubelet의 디폴트인 cgroupfs를 사용못하고 systemd를 사용해야 하고 그래서 결국 containerd로 systemd cgroup드라이버로 설정해야하는게 아닌지 궁금합니다.
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
Rocky linux 8 에 대한 containerd 설치 os조건
CentOS 9 (stream)containerd/docs/getting-started.md at main · containerd/containerd · GitHubcontainerd 설치 방식중 Option2 에 해당하는 containerd.io packages 설치를 위해 Rocky Linux 8이니까 CentOS클릭해서 들어가보면 OS조건이 CentOS 9에 해당되는데 그러면 Rocky Linux 8은 대상이 안되지 않나요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
gradle과 .jar로 수업 진행하고 싶은데...
방법을 모르겠어요...ㅠㅠ jdk17 버전으로 사용중인데 방법 좀 알려주시면 안될까요...?
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
런타임 설치 가이내용
참고:도커 엔진은 컨테이너 런타임이 쿠버네티스와 호환되기 위한 요구 사항인CRI를 만족하지 않는다. 이러한 이유로, 추가 서비스인cri-dockerd가 설치되어야 한다. cri-dockerd는 쿠버네티스 버전 1.24부터 kubelet에서제거된 기존 내장 도커 엔진 지원을 기반으로 한 프로젝트이다.이렇게 되어있는데 설명해주신 내용이라 하셨는데...설명해주신 내용이랑 참고글이 조금 이해가 안되서 글 올려봅니다.docker엔진은 dockershim이라는 cri가 있기 때문에 계속 써도 된다고 하셨던것같고 그림에도그렇게 표시되어있는데 위 참고글에는 cri를 만족하지 않는다고 하니 이부분이 일단 이해가 안가구요~ 1.23에 deprecated된다고 하더라도 dockershim 이 비록 관리나 버그가 문제라 하더라도 1.24에는 cri-dockerd라는게 내장되어 docker는 결국 계속 써도 되는거 아닌가요?
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
명령어 실행이 안되는거 같습니다...ㅠㅠ
실습에 문제 발생 시 최대한 캡쳐 화면을 꼭 올려 주세요. (원인 파악에 도움이 큽니다)영상 내용 질문 시 해당 영상 제목과 내용이 있는 시간을 같이 올려주세요. (내용을 다시 들어보고 답변을 드리기 위해서 입니다)긴 로그는 제 메일로 보내주세요. (k8s.1pro@gmail.com)카페 [강의 자료실]에도 많은 질문과 답변들이 있어요!cafe: https://cafe.naver.com/kubeopsC:\k8s>vagrant box add rockylinux-repo.json==> box: Loading metadata for box 'rockylinux-repo.json' box: URL: file://C:/k8s/rockylinux-repo.json==> box: Adding box 'rockylinux/8' (v8.8-20230518.0) for provider: virtualbox box: Downloading: https://dl.rockylinux.org/vault/rocky/8.8/images/x86_64/Rocky-8-Vagrant-Vbox-8.8-20230518.0.x86_64.box==> box: Box download is resuming from prior download progressProgress: 0% (Rate: 16576*/s, Estimated time remaining: 24:18:20)
-
미해결멀티OS 사용을 위한 가상화 환경 구축 가이드 (Docker + Kubernetes)
vagrant up 할때 해당 에러가 발생합니다
PS C:\Users\96tmd\Desktop\hsb\work\k8s-install\vagrant\scripts> vagrant upBringing machine 'k8s-master' up with 'virtualbox' provider...==> k8s-master: Box 'generic/ubuntu2004' could not be found. Attempting to find and install... k8s-master: Box Provider: virtualbox k8s-master: Box Version: >= 0==> k8s-master: Box file was not detected as metadata. Adding it directly...==> k8s-master: Adding box 'generic/ubuntu2004' (v0) for provider: virtualbox k8s-master: Downloading: https://vagrantcloud.com/generic/ubuntu2004 k8s-master:The box failed to unpackage properly. Please verify that the boxfile you're trying to add is not corrupted and that enough disk spaceis available and then try again.The output from attempting to unpackage (if any):bsdtar.EXE: Error opening archive: Unrecognized archive format