전체 글 94

Java 12~14 대표 코드

instanceof 패턴 매칭(Instanceof Pattern Matching) 도입// 12 버전Object obj = "Hello, World";if (obj instanceof String) { String str = (String) obj; // 명시적으로 형변환 System.out.println(str.toUpperCase());}// 14 이후Object obj = "Hello, World";if (obj instanceof String str) { System.out.println(str.toUpperCase()); // 형변환 생략해도 가능}개선된 스위치 표현식(Switch Expressions)String dayName = switch (day) { case..

Java/History 2024.12.16

bash grep, cut, >(Redirection) 활용

grep 명령어 -i (ignore case) 대소문자 구분하지 않는다. -w(word regular expression) 단어 단위로 찾는다. cut 명령어 -d(delimiter) 지정한 구분자를 사용한다. -f(fields) 필드를 기준으로 자른다. 예제 현 디렉토리에 있는 파일들 중, 대소문자를 구분하지 않고, yaml이 포함된 파일 이름들만 골라내어, yamls.txt파일에 저장하세요. ls -al | grep -i -w yaml | cut -d' ' -f?? > yamls.txt ls -al | grep -i -w yaml | awk '{print $9}' > yamls.txt

꺼내먹어요 2023.01.31

kubectl - create, apply의 차이점

변경의 차이 create, apply 모두 스펙에 따라 pod 생성을 하는 기능을 갖고 있지만, 스펙 파일을 일부 변경하고 create를 호출하면 이미 만들어진 오브젝트이기 때문에 실행이 불가능하다. 하지만 apply는 생성이 아닌 적용이기 때문에 변경한 스펙에 맞춰준다는 특징이 있다. create문 재호출 $ kubectl create -f ./pod.yaml $ # pod.yaml 수정 $ kubectl create -f ./pod.yaml Error from server (AlreadyExists): error when creating "pod.yaml": deployments.apps "deploy-sample" already exists apply문 재호출 $ kubectl apply -f ./..

Kubernetes 2023.01.02

Object의 정의

Spec, Status과 같은 속성을 가진 것. Pod k8s에서 실행되는 최소단위의 오브젝트. 독립적 공간과 사용 가능한 IP를 갖고있다. 파드는 클러스터 안에서 유동적이기 때문에 IP가 고정될 수 없다. 하나의 파드는 하나 이상의 컨테이너를 갖고있다. Namespace 클러스터 안에서 리소스들을 특정 기준으로 묶어서 관리하는 그룹. Volume 파드를 생성할 때 파드를 사용할 수 있는 디렉토리를 제공한다.(파드내 저장공간) 파드가 사라져도 저장가능한 디렉토리를 볼륨을 통해 생성하고 사용할 수 있다. Service k8s 외부에서 내부로 접근할때 도와주는 객체. Deployment 파드를 기반으로 레플리카셋 오브젝트를 합친 형태. deployment에 지정된 레플리카셋에 따라 파드 개수를 유지한다. 즉..

Kubernetes 2023.01.02

Pod와 Deployment의 차이

Pod는 단 한개로서 생성 및 관리 되지만, Deployment는 관리되는 그룹 안에서 지정된 파드(들)이 생성된다. Deployment 생성 스펙에 replicas가 pod의 개수를 의미한다. apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80

Kubernetes 2023.01.02