[K8S Deploy Study by Gasida] - RKE2 - 5 RKE2 보안 기능
CIS 강화 가이드 RKE2는 기본적으로 강화된 보안 기능을 갖도록 설계되어 있으며, 수정 없이 대부분의 Kubernetes CIS 제어 테스트를 통과한다. 하지만 몇 가지 주목할 만한 예외 사항이 있으며, 이러한 경우에는 CIS 벤치마크를 완벽하게 통과하기 위해 수동 개입이 필요하다. RKE2는 호스트 운영 체제를 수정하지 않는다. 따라서 ...
CIS 강화 가이드 RKE2는 기본적으로 강화된 보안 기능을 갖도록 설계되어 있으며, 수정 없이 대부분의 Kubernetes CIS 제어 테스트를 통과한다. 하지만 몇 가지 주목할 만한 예외 사항이 있으며, 이러한 경우에는 CIS 벤치마크를 완벽하게 통과하기 위해 수동 개입이 필요하다. RKE2는 호스트 운영 체제를 수정하지 않는다. 따라서 ...
ETCD 백업 및 복구 가이드 RKE2는 하드웨어 장애로 데이터가 유실되는 것을 대비해 강력하고 유연한 etcd 스냅샷 기능을 내장하고있다. 이번 과제에서는 로컬 저장소는 물론 S3 클라우드 저장소까지 지원하는 RKE2의 백업/복구 메커니즘을 정리한다. 1. 백업(Snapshot) 만들기 RKE2는 etcd 상태를 스냅샷 파일로 저장한다. ...
RKE2 인증서 갱신 및 버전 업그레이드 인증서 관리 및 수동 갱신 RKE2 클라이언트 및 서버 인증서는 발급일로부터 365일 동안 유효하다. 만료되었거나 만료 예정일로부터 120일 이내인 인증서는 RKE2가 시작될 때마다 자동으로 갱신된다. 이 갱신 과정에서 기존 키가 재사용되어 기존 인증서의 유효 기간이 연장된다. 기존 인증서의...
실습환경 배포 Vagrantfile : Rocky Linux 9 # Base Image https://portal.cloud.hashicorp.com/vagrant/discover/bento/rockylinux-9 BOX_IMAGE = "bento/rockylinux-9" # "bento/rockylinux-10.0" BOX_VERSION...
RKE2 개요 및 아키텍처 RKE2 란 무엇인가? KE2 (Rancher Kubernetes Engine 2) 는 SUSE (이전 Rancher Labs) 가 제공하는 엔터프라이즈급 보안 중심 Kubernetes 배포판이다. 공식 명칭은 RKE2: The Next-Generation Kubernetes Distribution이며 아래와 같은 환경에...
폐쇄망(Air-gapped) 환경에서 Kubespray를 성공적으로 배포하기 위한 가장 핵심적인 파일이 바로 offline.yml이다. Kubespray는 기본적으로 수십 개의 바이너리와 수백 개의 컨테이너 이미지를 인터넷(GitHub, GCR, Quay, DockerHub 등)에서 다운로드하도록 설계되어 있다. offline.yml의 역할은 이러한...
이전 단계에서 폐쇄망 환경을 위한 모든 에셋(OS 패키지, 컨테이너 이미지, PyPI)을 outputs/ 디렉터리에 다운로드하고 로컬 Nginx와 Registry를 통해 서빙할 준비를 마쳤다. 이제 본격적으로 격리된 파이썬 가상환경(venv)에 진입하여 Ansible 플레이북을 조작하고, 실제 타겟 노드(k8s-node1, k8s-node2)에 Ku...
오프라인(폐쇄망) 환경에서 Kubespray를 사용해 Kubernetes 클러스터를 설치하려면, 설치에 필요한 바이너리/컨테이너 이미지/Python 패키지/RPM(deb) 패키지까지 사전에 모두 다운로드해 내부에 제공할 수 있어야 한다. 이번 단계에서는 kubespray-offline 오픈소스 스크립트를 활용해 이 모든 패키지를 원클릭으로 다운로드하...
리눅스 / 파이썬 패키지 및 이미지 저장소 구성 오프라인(폐쇄망) 환경에서 Kubespray를 사용해 Kubernetes 클러스터를 설치하려면 크게 3가지 요소가 내부망에 준비되어야 한다. OS 패키지 (YUM/DNF) kubeadm, kubelet, kubectl 및 필수 시스템 유틸리티 컨테이너 이미지...
개요 오프라인(폐쇄망) 환경의 쿠버네티스 클러스터를 구축하기 위해, k8s-node들은 외부 인터넷과 직접 통신할 수 없도록 격리해야 한다. 대신 패키지 다운로드나 외부 통신이 임시로 필요할 때, 인터넷과 연결된 admin 노드가 일종의 라우터(NAT 게이트웨이) 역할을 수행하도록 구성한다. net.ipv4.ip_forward = 1 ...