본문 바로가기

Devops29

[Kubernetes] 파드 간 통신 방법과 FQDN/DNS 요청 시 발생한 에러 처리 쿠버네티스 환경에서 Pod는 바인딩한 Service의 이름이나 Cluster-IP를 이용하여 다른 Pod와 통신을 할 수 있다. 해당 글에서는 파드 간 통신 방법과 해당 방법을 이용하는 중 발생한 에러 및 트러블 슈팅에 대하여 다룰 것이다. 1. 파드 간 통신 예시로, nginx라는 Pod가 존재하고, [Pod] # nginx-pod.yaml apiVersion: v1 kind: Pod metadata: labels: app: nginx name: nginx spec: containers: - image: nginx:latest name: nginx resources: {} dnsPolicy: ClusterFirst restartPolicy: Always status: {} my-spring-boot라는.. 2023. 8. 21.
[Kubernetes] 쿠버네티스 Ec2(Kubeadm) 환경에서 Master-Worker Node 구축 쿠버네티스 환경을 구축하는 방식에는 다양한 방법들이 존재하는데, 그중에서도 kubeadm을 이용하여 ubuntu 서버 내에 설치하고 직접 클러스터를 구축하는 방식을 다루어 볼 것이다. 1. EC2 인스턴스 생성 쿠버네티스는 기본적인 컴퓨터 자원의 사용량이 많기 때문에 인스턴스 사양의 CPU는 2 core 이상, RAM은 2 GB 이상을 필요로 한다. ubuntu 서버 기준으로 t2.medium이나 t3.medium이 최소 사양이라고 볼 수 있다. 위와 같이 마스터 노드 1개, 워커 노드 1개로 구성할 것이다. 2. 인스턴스 보안그룹 생성 쿠버네티스는 노드 간 다양한 포트를 통하여 통신을 하는데, 컨트롤 플레인(마스터 노드)과 워커 노드의 각각의 필요한 포트를 이용하기 위하여 보안 그룹 설정을 필요로 한다.. 2023. 8. 11.
[Kubernetes] The connection to the server [IP]:6443 was refused 쿠버네티스를 설치하고 Master Node 구축을 위하여 kubeadm의 초기화를 한 후 kubectl을 이용하여 정보를 확인하려던 차, 아래의 에러가 발생했다. The connection to the server 172.31.12.179:6443 was refused - did you specify the right host or port? 위 에러는kubectl을 이용하여 kube-apiserver로 요청을 보냈으나 kubelet 또는 kube-apiserver에 현재 문제가 있어 통신에 장애가 있다는 것이다. # 초기화 sudo kubeadm init # 초기화 후 설정 mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/c.. 2023. 8. 7.
[Linux/Ubuntu] 메모리 / 디스크 / 디렉토리 용량 확인 많은 사람들이 AWS에서 Ubuntu를 기반으로 EC2 인스턴스를 많이 생성해서 운용하는 것으로 알고 있는데, 운용함에 있어 알아두면 좋은 명령어들이다. 1. 메모리 확인 # 기본 명령어 $ free # 가독성을 높인 옵션 $ free -h # 저장 바이너리 단위로 출력 # (-b, -k, -m, -g) : 순서대로 바이트, 키비바이트, 메비바이트, 기비바이트 # (--tebi, --pebi) : 테비바이트, 페비바이트 $ free -b # 용량 단위로 출력 # (--kilo, --mega, --giga, --tera, --peta) $ free --kilo 위 명령어를 입력하면 아래 6가지 항목을 출력한다. total : 현재 인스턴스의 총 메모리 used : total 메모리에서 항목 중 free 및.. 2023. 7. 21.
[Ubuntu/AWS] 스토리지 확장 적용 ※ 해당 세팅은 ubuntu 22.04 기준으로 작성된 게시글이다. 아래는 현재 사용중인 서버의 스토리지의 총량과 사용량을 나타내는 명령어이다. # EC2 인스턴스 내 사용 가능 스토리지 확인 # -h 옵션은 사람이 읽기 좋은 단위로 변환 $ df -h AWS에서 초기에 세팅한 스토리지(EBS)의 용량에서 추가로 확장 시켜도 위의 명령어를 통해서 EC2 인스턴스에서 적용이 되지 않은 것을 확인할 수 있다. AWS에서도 스토리지의 설정을 한 후 적용되는 시간이 필요하고, 이후에도 위의 명령어를 이용하여 적용이 되지 않았다면 아래의 절차에 따라서 스토리지 마운트를 하여 이용할 수 있다. AWS의 스토리지에 변화가 있을 때, EC2에서 사용하는 모든 스토리지에 관련이 있고, EC2에 종속된 스토리지의 볼륨의 .. 2023. 6. 29.
[Ubuntu/Linux] 사용자 계정 생성 및 접속 방법 AWS 또는 GCP의 클라우드 서비스에서 EC2나 Cloud Engine(VM)을 이용하여 개발할 때, Ubuntu(또는 CentOs)를 많이 이용한다. 통상적으로 서버에 접속할 때는 CSP(Cloud Service Provider)에서 제공하는 브라우저에서 접속하거나, 비밀 키를 이용하여 Putty나 터미널을 이용하여 root계정에 접속하여 작업을 하는데, 이러한 방식은 번거로우며 비밀 키에 대한 엄격한 관리가 필요하다. # ssh 접속 예시ssh -i [비밀 키] [사용자 계정 이름]@[인스턴스 서버 IP]  이러한 부분에서 사용자 계정을 생성하고 비밀번호를 설정하여 서버에 접속하게 된다면, 비밀키를 관리하는 노력을 줄일 수 있을 것이다. 여러 명의 사용자가 서버에 접속할 필요가 있을 때, 다수의 사.. 2023. 6. 27.