Kubectl
kubectl
은 Kubernetes 클러스터를 cli(Command Line Interface) 방식으로 관리하는 데 쓰는 툴입니다. Kubernetes 클러스터에서 리소스 배포, 서비스 스케일링 조정, 로그 확인 등 다양한 작업을 수행할 수 있습니다.
Kubectl 설치
Windows에서 Kubectl 설치
- Chocolatey로 설치:
choco install kubernetes-cli
- Scoop으로 설치:
scoop install kubectl
- curl로 바이너리 다운로드:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/windows/amd64/kubectl.exe" move kubectl.exe C:\Windows\System32\kubectl.exe
2.2. macOS에서 Kubectl 설치
macOS에서는 Homebrew
를 이용해 손쉽게 kubectl을 설치할 수 있습니다.
- Homebrew로 설치:
brew install kubectl
- curl로 바이너리 다운로드:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/kubectl
2.3. Linux에서 Kubectl 설치
Linux에서는 패키지 관리자를 사용하거나, 직접 바이너리를 다운로드하는 방법으로 kubectl을 설치할 수 있습니다.
- APT 패키지 관리자를 이용한 Ubuntu/Debian 설치:
sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubectl
- YUM 패키지 관리자를 이용한 CentOS/RHEL 설치:
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kube* EOF sudo yum install -y kubectl --disableexcludes=kubernetes
- curl로 바이너리 다운로드:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" chmod +x kubectl sudo mv kubectl /usr/local/bin/kubectl
설치가 완료된 후 kubectl version --client
명령어를 사용하여 설치가 성공적으로 이루어졌는지 확인합니다.
3. Kubectl 설정 및 기본 사용법
설치가 완료된 후, kubectl을 사용하여 Kubernetes 클러스터에 접근하려면 클러스터의 kubeconfig
파일을 설정해야 합니다. kubeconfig
파일은 kubectl이 어떤 클러스터에 연결할지, 어떤 자격 증명을 사용할지 등을 정의합니다.
Kubeconfig 파일 설정
보통 ~/.kube/config
경로에 위치하며, 다중 클러스터 환경에서는 여러 kubeconfig
파일을 사용할 수 있습니다. 환경 변수 KUBECONFIG
를 사용하여 특정 설정 파일을 지정할 수 있습니다.
자세한 설정은 kubeconfig 파일을 사용하여 클러스터 접근 구성하기 문서를 참조해주세요!
$env:KUBECONFIG="C:\Users\your-user\.kube\config"
기본 명령어
클러스터 정보 확인: kubectl cluster-info
현재 컨텍스트 확인: kubectl config current-context
모든 네임스페이스의 리소스 목록 조회: kubectl get all --all-namespaces
리소스 배포: kubectl apply -f deployment.yaml
리소스 삭제: kubectl delete -f deployment.yaml
설치한 kubectl이 작동하지 않을 때 대처
설치 후 kubectl 명령어가 정상적으로 작동하지 않는 경우, PATH 환경 변수를 확인해보세요! 또한, Kubernetes 클러스터와 연결되지 않는다면 kubeconfig
파일이 올바르게 설정되었는지 확인해봐야 합니다.
버전 확인
현재 설치된 kubectl의 버전을 확인하여 Kubernetes 클러스터와 호환되는지 점검합니다.
kubectl version --client
참고 자료
'DevOps' 카테고리의 다른 글
K9s - 쿠버네티스 관리를 더 편하게! (0) | 2023.09.03 |
---|---|
[DevOps] 최종 프로젝트 회고 - 일정 및 작업 관리 (0) | 2023.07.11 |
[DevOps] 최종 프로젝트 - 구현(IaC) (0) | 2023.06.20 |
[DevOps] 최종 프로젝트 회고 - 구현(클라우드 리소스) (0) | 2023.06.20 |
[DevOps] 최종 프로젝트 회고 - 구현(CI/CD) (0) | 2023.06.19 |