반응형

전체 글 118

[CKA] deployment 롤백/ 롤아웃 명령어 정리

1. deployment 생성시 > kubetctl create -f xxxx.yaml 2.deployment 조회할때 > kubectl get deployments -o wide 3. 버전을 업데이트하고 적용할때 > vi xxx.yaml 들어가서 이미지 수정하고 > kubectl apply -f xxx.yaml > kubectl set image deployment/app-deplotment nginx=nginx:1.20.0 4. 롤아웃이 제대로 되었는지 확인하고자 할때 > kubectl rollout status deployment/app-deployment 5. 롤라웃의 히스토리를 보고싶을때 > kubectl rollout history deploy

카테고리 없음 2023.11.25

[쿠버네티스] PVC, 스토리지클래스, 동적프로비저닝

쿠버네티스(Kubernetes)에서의 스토리지 클래스(Storage Class)는 다양한 유형의 스토리지를 정의하고 관리하는 방법을 제공합니다. 스토리지 클래스는 쿠버네티스 클러스터 내에서 사용할 수 있는 스토리지 유형을 정의하며, 이를 통해 동적인 볼륨 프로비저닝을 가능하게 합니다. 스토리지 클래스의 주요 기능과 특징은 다음과 같습니다: 동적 프로비저닝: 스토리지 클래스를 사용하면, 사용자는 필요에 따라 실시간으로 스토리지 볼륨을 생성할 수 있습니다. 이는 Persistent Volume Claim(PVC) 요청에 의해 자동으로 발생합니다. 이 방식은 미리 정의된 스토리지 볼륨을 관리하는 것보다 유연하고 효율적입니다. 스토리지 유형 정의: 각 스토리지 클래스는 특정 스토리지 유형(예: SSD, HDD,..

[쿠버네티스] PV, PVC (Persistent Volumes / Persistent Volumes Claim) 정리

쿠버네티스(Kubernetes)에서의 PV(Persistent Volume)와 PVC(Persistent Volume Claim)는 데이터 저장과 관련된 중요한 개념입니다. 컨테이너 환경에서 데이터 저장소는 매우 중요한 개념입니다. 컨테이너 자체는 일반적으로 불변(immutable)하고 상태 비저장(stateless)의 특성을 가지고 있습니다. 이는 컨테이너가 삭제되거나 재시작될 때 내부 데이터가 소실될 수 있음을 의미합니다. 그렇기 때문에 쿠버네티스에서도 PV (Persistent Volume)와 PVC (Persistent Volume Claim) 개념을 이용하여 영구적인 데이터 저장 옵션을 설정하셔야합니다. PV (Persistent Volume): PV는 클러스터 내에서 사용자가 사용할 수 있는 ..

쿠버네티스 기본 네트워크 개념 ( Pod 통신 )

쿠버네티스는 기본적으로 네트워크 개념은 다음 2가지를 기본으로 합니다. 1. Pod는 NAT 없이 다른 노드 의 다른 모든 Pod와 통신할 수 있습니다. 2. 노드의 에이전트(예: 시스템 데몬, kubelet)는 해당 노드의 모든 Pod와 통신할 수 있습니다. 3. Pod 내의 컨테이너는 네트워킹을 사용하여 루프백을 통해 통신합니다 . 현재 노드에는 아래와 같이 deployment 오브젝트가 배포되어 있습니다. 이러한 Pod들이 서로 다른 노드에 배포되어있지만 통신이 가능하다는 것을 보여드리겠습니다. 현재 해당 pod들은 nginx 이미지를 이용하여 배포된 상황이고 해당 내용에는 통신이 되는지 체크하기 위함이니 해당 pod에 접속해서 다른 pod들과 통신이 가능한지 확인해보겠습니다. 서로 다른 노드에 배..

Windows에 우분투 설치하기 (WSL 이용하기)

WSL이란? WSL은 "Windows Subsystem for Linux"의 약자로, Windows 운영 체제에서 Linux 기반의 환경을 사용할 수 있게 해주는 기능입니다. 이를 통해 사용자는 Windows에서 Linux 배포판을 실행하고, Linux 전용 소프트웨어나 도구들을 사용할 수 있습니다. WSL은 개발자들에게 특히 유용한데, 이는 Linux와 Windows 간의 호환성을 높여주고, 다양한 운영 체제에서의 개발을 용이하게 해줍니다. WSL을 사용하면 별도의 가상 머신이나 듀얼 부팅 없이도 Windows 내에서 Linux 명령어와 응용 프로그램을 실행할 수 있습니다. WSL을 이용하여 우분투 설치하는 방법 1. powershell에서 다음 명령어 입력하여 WSL을 활성화 합니다. wsl --in..

파이썬 클래스(Class) 이해하기

클래스는 객체 지향 프로그래밍의 핵심 요소 중 하나로, 데이터와 데이터를 처리하는 함수(메서드)를 하나의 단위로 묶는 방법을 제공합니다. 클래스는 객체의 설계도나 틀로 생각할 수 있으며, 이 설계도를 바탕으로 객체(인스턴스)를 여러 개 생성할 수 있습니다. 클래스의 기본구조 class Dog: def __init__(self, name, breed): self.name = name self.breed = breed def bark(self): print(f"{self.name} says Woof!") # 객체 생성 my_dog = Dog(name="Buddy", breed="Golden Retriever") # 메서드 호출 my_dog.bark() # 출력: Buddy says Woof! self: 클래..

파이썬 문자열 포맷팅 자료형 자동 처리 해주는 :: f-string 문법

파이썬의 f-string은 자료형을 자동으로 처리해줍니다. f-string은 문자열 포매팅을 위한 방법으로, 문자열 내에 중괄호 {}를 사용하여 변수를 직접 참조할 수 있습니다. 이렇게 하면, 변수의 자료형을 직접 고려하지 않고도, 변수의 값이 문자열에 적절하게 삽입됩니다. 예를 들어, 정수, 실수, 리스트 등 다양한 자료형을 f-string으로 처리할 수 있습니다 name = "John" age = 30 height = 180.5 hobbies = ["Reading", "Hiking"] formatted_string = f"My name is {name}, I am {age} years old, my height is {height} cm, and my hobbies are {', '.join(hobb..

/etc/hosts 파일 호스트이름과 IP주소를 매핑해주는 파일

/etc/hosts 파일은 유닉스와 유사한 OS에서 호스트이름과 IP 주소의 로컬 매핑을 관리하는 파일입니다. 즉, 컴퓨터의 네트워크에서 다른 컴퓨터나 장치의 이름을 IP 주소로 변환하기 위해 사용됩니다. /etc/hosts 파일을 통해 특정 도메인 이름을 IP 주소로 직접 매핑할 수 있습니다. DNS 서비스를 사용하지 않고 로컬에서 직접 이름을 해석할 수 있는 방법입니다. DNS문제 또는 다른 네트워크 관련 문제를 진단할 때 임시로 이름과 IP주소를 매핑하여 문제의 원인을 파악할 수 있습니다. 아래와 같이 /etc/hosts 파일을 사용하기 위해서는 각 줄은 하나의 IP와 그와 연결된 하나 이상의 호스트 이름으로 구성됩니다. 줄은 IP주소로 시작되며, 이어서 해당 IP와 연결된 호스트 이름이 뒤따릅니다..

Bastion Host(바스천 호스트)란 무엇인가?

컴퓨터 네트워크 보안에서 중요한 역할을 하는 특수한 유형의 서버입니다. 보안 상의 이유로 인터넷과 같은 공개 네트워크와 비공개 네트워크 사이에 위치하여 내부 네트워크의 접근을 보호하고 관리하기 위해 사용됩니다. Bastion Host의 주요 목적은 네트워크의 보안을 강화하는 것이며, 이를 위해 특정한 보안 조치와 정책이 적용됩니다. 제한된 접근: Bastion Host는 매우 제한적인 접근 권한을 가지며, 필요한 서비스와 프로토콜만을 허용합니다. 이는 네트워크 내의 다른 시스템이 위협으로부터 보호되도록 돕습니다. 강화된 보안: 이 시스템은 보안을 최대화하기 위해 특별히 구성됩니다. 불필요한 서비스는 비활성화되고, 최신 패치와 보안 업데이트가 정기적으로 적용됩니다. 감사 및 로깅: 모든 트래픽과 접근 시도..

서브넷을 분리하는 이유 ( public subnet, private subnet)

웹 서버와 데이터베이스(DB) 서버를 각각의 다른 서브넷에 두는 것에는 몇 가지 결정적인 이유가 있습니다. 이러한 구성은 보안, 네트워크 성능 및 관리 측면에서 이점을 제공합니다. 보안 강화: 1. 외부로부터의 공격 방지: 웹 서버는 외부에서 접근 가능한 서비스로서, 웹 애플리케이션 취약점을 이용한 공격이 발생할 수 있습니다. 웹 서버를 별도의 서브넷에 두면 외부로부터의 직접적인 접근을 허용하지 않을 수 있으며, 방화벽 등을 통해 필요한 트래픽만 허용하여 보안을 강화할 수 있습니다. 2. 데이터베이스 보호: 데이터베이스는 웹 서버에 비해 더 민감한 정보를 저장하는 경향이 있습니다. 따라서 데이터베이스 서버를 웹 서버와 분리하여 외부로부터의 직접 접근을 차단하고, 내부 네트워크에서만 접근 가능하도록 함으로..

반응형