Tech-Blog: K8S와 Cloud-Native 기술 탐구

  • rsync 기초 사용법과 유용한 옵션 소개

    파일과 폴더를 백업하거나 여러 장치 간에 동기화하는 작업이 필요할 때 rsync는 매우 유용한 도구입니다. 이 글에서는 rsync의 개념과 기본 명령어를 설명하고, 자주 사용하는 유용한 옵션과 그 사용법을 예제 코드와 함께 소개합니다. 1. rsync란 무엇인가요? rsync(remote sync)는 파일을 다른 위치로 복사하거나, 두 위치 간 파일을 동기화하는 명령줄 도구입니다. 로컬 시스템 간뿐만 아니라 네트워크를 통해 원격 서버와도 Read more

  • 특정 Pod 제외하고 Kubernetes Node Drain하기

    Kubernetes 클러스터 운영 중, 특정 노드에서 워크로드를 비우는 drain 작업은 자주 발생합니다. 그러나 때때로 중요한 Pod를 유지하면서 나머지 Pod만 이동시키고자 할 때가 있습니다. 예를 들어 rook-ceph와 같은 스토리지 관리 Pod들은 특별히 다루어야 할 경우가 많죠. 이번 글에서는 특정 Pod를 제외하고 노드를 drain하는 Bash 스크립트를 소개합니다. 1. Node Drain 개요 Kubernetes에서 kubectl drain 명령어는 특정 노드의 Read more

  • Go 최신 버전 설치 가이드

    Go 언어는 강력한 성능과 간결한 문법으로 많은 개발자들에게 사랑받는 프로그래밍 언어입니다. 이번 가이드에서는 Linux 환경에서 Go의 최신 버전을 다운로드하고 설치하는 방법을 알아보겠습니다. 이 튜토리얼을 따르면 누구나 쉽게 Go를 설치하고 환경 변수를 설정할 수 있습니다. 1. Go 최신 버전 다운로드 Go의 최신 버전을 다운로드하려면 먼저 Go 공식 웹사이트를 방문하여 최신 버전의 다운로드 링크를 확인해야 합니다. 이후 Read more

  • 오프라인 환경에서 Helm 플러그인 설치하기

    Helm은 Kubernetes 애플리케이션을 관리하기 위한 인기 있는 패키지 매니저입니다. 일반적으로 Helm 플러그인을 설치하려면 인터넷 연결이 필요하지만, 오프라인 환경에서도 이를 설치할 수 있는 방법이 있습니다. 이 글에서는 오프라인 환경에서 Helm 플러그인을 설치하는 구체적인 절차를 알아봅니다. 예시로, helm-ensurecrds 플러그인을 오프라인에서 설치하는 과정을 통해 이를 설명하겠습니다. 왜 오프라인 설치가 필요한가? 오프라인 환경은 보안이 엄격한 네트워크, 인터넷 연결이 제한된 Read more

  • containerd에서 Garbage Collection 관리하기

    containerd는 컨테이너를 관리하는 경량의 컨테이너 런타임입니다. Kubernetes 환경에서 널리 사용되는 이 런타임은 이미지와 컨테이너 리소스를 효율적으로 관리해줍니다. 하지만 시간이 지남에 따라 사용하지 않는 이미지들이 쌓이면 디스크 용량을 불필요하게 차지할 수 있습니다. 이를 방지하기 위해, containerd에서 쓰이지 않는 이미지를 정리하는 Garbage Collection 작업이 필요합니다. 이 글에서는 사용되지 않는 이미지를 식별하고 삭제하는 스크립트를 사용해 containerd에서 효과적으로 이미지 Read more

  • Python 3.10에 전용 pip 설치 및 활용 방법

    Python을 사용하여 다양한 패키지를 관리할 때, pip는 필수적인 도구입니다. Python 3.10을 사용하고 있다면, 해당 버전에 맞는 pip를 설치하고 사용하는 방법을 알아두면 매우 유용합니다. 이 글에서는 get-pip.py 스크립트를 활용하여 Python 3.10 전용 pip를 설치하는 방법과 이를 효율적으로 관리하는 팁을 소개합니다. 1. get-pip.py 스크립트를 통해 pip 설치하기 Python 3.10 버전에서 pip를 설치하려면, 먼저 get-pip.py 스크립트를 다운로드해야 합니다. Read more