우주먼지
Kubernetes Namespace
Ops/Kubernetes 2023. 2. 20. 12:55

💡 Namespace 물리 클러스터 기반의 가상 클러스터, 기본 네임스페이스는 default 이다. 같은 네임스페이스 내에서 리소스의 이름은 중복 불가능 Kubectl 기반 Namespace 생성 # 1. yaml의 metadata 하위 name: 에 지정해도 됨 # 2. 리소스를 생성할때 -n [namespace-name] 으로 옵션 지정도 가능 # 3. kube-node-lease, kube-system, kube-public 네임스페이스는 사용하지 않는게 좋음 # Namespace 생성 kubectl create namespace [namespace-name] # Namespace 조회 kubectl get ns # 기본 Namespace의 모든 Resource 조회 kubectl get all -..

article thumbnail
Kubernetes Pod
Ops/Kubernetes 2023. 2. 20. 00:48

💡 Pod 클러스터 안에서 배포되는 가장 작은 단위의 객체 기본 개념 1개 이상의 컨테이너를 모아놓은 것으로 쿠버네티스 어플리케이션의 최소 단위 Pod는 노드IP와 별개로 고유IP를 할당 받으며, Pod 안의 Container들은 그 IP를 공유한다 파드 안의 컨테이너들은 동일한 볼륨과 연결이 가능하다 Pod의 Lifecycle Pending 단계로 시작해서 컨테이너 실행이 성공하면 OK, 실패시 Pendind & Failed Pod 실행 실패 시 kubectl logs [pod-name] | events 을 입력해 실패 이벤트 로그를 확인 Kubectl 기반 Pod 생성 & 관리 # Pod 생성 kubectl run [pod-name] --image=[image-name] --dry-run=client..

article thumbnail
Kubernetes의 구성요소
Ops/Kubernetes 2023. 2. 19. 05:19

💡 Kubernetes 구성 컨트롤 플레인 컴포넌트 클러스터에 관한 전반적인 결정을 수행하고 클러스터 이벤트를 감지하고 반응한다. API-Server Control Plane(Master) 의 중심 컨트롤 플레인 컴포넌트, 모든 역할의 출발점 etcd 모든 클러스터의 데이터가 저장 되어 있는 고가용성 Key-Value Database etcd는 항상 백업해두자 Scheduler 새로 생성된 Pod를 감지하고, 컨테이너를 생성할 노드를 선택하는 컨트롤 플레인 컴포넌트 결정을 위해 고려되는 요소 리소스에 대한 개별 & 총체적 요구사항 하드웨어, 소프트웨오, 정책적 제약 Affinity & Anti-Affinity 명세 데이터 지역성, 데드라인 Controller-Manager 컨트롤러 프로세스를 실행하는 컨..

Race Condition
Ops/CS 2023. 2. 19. 04:31

💡 Race Condition 여러 개의 프로세스가 공유 자원에 동시 접근할 때 실행 순서에 따라 결과값이 달라질 수 있는 현상 임계구역은 아래의 세가지 요구조건을 만족해야 유효한 알고리즘이 된다 Mutual Exclusion(상호 배제) 하나의 자원에는 하나의 프로세스만 접근 가능할 수 있어야 함 Progress(진행) 임계구역이 비었으면 자원을 사용할 수 있어야 한다 (Deadlock Free) Bounded Waiting(한계 대기) 언젠가는 임계구역에 진입할 수 있어야 한다 > 경쟁상태는 메모리를 공유하기 때문에 발생하며 해결방법은 스레드의 순차적 실행(동기화)을 보장하면 됨 임계구역의 일반적인 형태 do { wants[i] = true; // 프로세스가 공유 자원을 사용하겠다고 선언 while ..

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
article thumbnail
Kubernetes 복습 (Resources, Use Cases) (진행중)
Ops/Kubernetes 2023. 2. 11. 15:33

⭐ Kubernetes 💡 목차 기본적은 내용은 알고 있으므로 간단한 활용법만 작성 1. Kubernetes 구성 2. Kubernetes Resources 2-1. Pod 2-2. Namespace 2-3. Labels 2-4. Deployments (replicaset, replication controller) 2.5. Statefulset 2-6. DaemonSet 2-7. Service 2-8. ServiceDiscovery 2-9. ConfigMap & Secret 2-10. Volume - emptyDir 2-11. Volume - hostPath 2-12. Volume - NFS 2-13. Volume - static 2-14. Volume - Dynamic 2-15. RBAC 2-16. ..

article thumbnail
EC2 Instance Memory Swaping
Ops/AWS 2023. 1. 24. 02:37

💡 Memory Swaping 보통 Swap의 용량은 ram의 2배라고 알려져있고 t2.micro의 ram은 1gb, 스와핑용량 +2gb를 더해서, 총 3gb의 메모리로 증설이 가능하다 EC2 인스턴스 내부 # 스왑 파일 생성 $ sudo dd if=/dev/zero of=/swapfile bs=128M count=16 # bs는 블록 크기이며, count는 블록 수이므로 128mb x 16 = 2048mb 크기의 스왑 파일을 생성한다는 뜻이다. # 스왑 파일에 대한 권한 변경 $ sudo chmod 600 /swapfile # Linux 스왑 영역 설정 $ sudo mkswap /swapfile # 스왑 파일을 즉시 사용하도록 변경 $ sudo swapon /swapfile # 성공 확인 $ sudo ..

검색 태그