반응형

성장일기 60

[쿠버네티스] 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와 연결된 호스트 이름이 뒤따릅니다..

[python] 리스트 컴프리헨션(List Comprehension)이란

even_numbers = [i for i in range(1, 11) if i % 2 == 0] 리스트 컴프리헨션은 한 줄의 코드로 표현되는 간결한 방법으로, 반복문과 조건문을 이용하여 리스트를 생성합니다. 리스트 컴프리헨션의 일반적인 구조는 다음과 같습니다: [표현식 for 항목 in 반복 가능 객체 if 조건문] for 항목 in 반복 가능 객체: 이 부분은 일반적인 for 반복문과 같습니다. in 다음에 오는 '반복 가능 객체'는 리스트, 튜플, 집합, 사전, 문자열, range 등이 될 수 있습니다. 이 반복문은 '반복 가능 객체'의 각 원소에 대해 반복을 수행합니다. 표현식: 이 부분은 각 반복에서 실행되는 코드입니다. 보통 '항목'을 이용하여 어떤 계산을 수행하고, 그 결과를 새 리스트에 추..

[Python] 파이썬 os 모듈, os.path. 로컬 디렉토리 경로 등 실행하기 (예제포함)

파이썬의 os 모듈은 운영 체제와 상호 작용하는 기능을 제공합니다. 이 모듈은 운영 체제에 따라 다른 기능을 제공하는 표준 Python 라이브러리의 일부입니다. os 모듈은 다음과 같은 기능을 제공합니다: 디렉토리 또는 파일 조작: os 모듈을 사용하면 Python에서 디렉토리를 생성하고, 이름을 변경하고, 내용을 읽어오며, 디렉토리를 삭제하는 등의 작업을 할 수 있습니다. 예를 들면, os.mkdir(), os.rename(), os.remove(), os.rmdir(), os.listdir() 등의 함수가 있습니다. 환경 변수 조작: os.environ을 통해 시스템의 환경 변수를 읽고 쓸 수 있습니다. 운영체제와의 상호작용: 예를 들어, os.system() 함수는 운영 체제의 쉘 명령을 실행할 수..

cloud native의 장점과 단점은 무엇인가? 예를 들어보자

1. Cloud Native 장점 "Cloud Native"는 애플리케이션의 확장성, 신속한 배포, 높은 복원력 등 여러 가지 장점을 제공합니다. #확장성 (Scalability): 클라우드 네이티브 애플리케이션은 요구사항에 따라 쉽게 확장할 수 있습니다. 이것은 트래픽이 늘어나는 시간에 더 많은 리소스를 사용하고, 트래픽이 줄어들 때 리소스를 줄이는 것을 가능하게 합니다. 예를 들어, 블랙프라이데이 같은 특정 시기에 대규모 트래픽이 예상되는 이커머스 애플리케이션에서는, 이 시기를 앞두고 자동으로 리소스를 늘려서 처리능력을 강화하고, 이후에는 다시 리소스를 줄여 비용을 절약할 수 있습니다. #신속한 배포 (Rapid Deployment): 클라우드 네이티브 애플리케이션은 빠른 반복 업데이트와 배포가 가능..

반응형