본문 바로가기
728x90
반응형

Polpid's World444

쿠버네티스 입문 10장 컨피그맵 ConfigMap 컨테이너에 필요한 환경 설정을 컨테이너와 분리해서 제공하는 기능 사용 설정apiVersion: v1 kind: ConfigMap metadata: name: config-dev data: DB_URL: localhost DB_USER: myuser DB_PASS: mypass DEBUG_INFO: debug 컨피그맵 일부만 사용spec: containers: - name: image: env: - name: DEBUG_LEVEL valueFrom: configMapKeyRef: name: config-dev key : DEBUG_INFO .env[].valueFrom 사용 .env[].valueFrom.configMapKeyRef 를 통해 이미 정의된 configmap 사용 컨피그맵 전.. 2020. 12. 30.
쿠버네티스 입문 - 8장 인그레스 Ingress 개념 클러스터 외부에서 안으로 접근하는 요청들을 어떻게 처리할지 정의해둔 규칙 인그레스는 규칙들의 모음이며 실제로는 인그레스 컨트롤러가 동작시킨다. 설정 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: test annotations: nginx.ingress.kubernetes.io/rewrite-target: / spec: rules: - host: foo.bar.com http: paths: - path: /foos1 pathType: Prefix backend: service: name: s1 port: number: 80 - path: /bars2 pathType: Prefix backend: service: name:.. 2020. 12. 30.
쿠버네티스 입문 - 7장 서비스 Service 개념 동적으로 변하는 Pod 들을 고정적으로 접근할 때 사용한다. 서비스는 주로 L4영역에서 통신할 때 사용한다. 서비스 타입 ClusterIP default, 클러스터 내부에서만 사용가능 NodePort 모 모든 노드에 지정된 포트를 할당함. 외부에서 접근 가능 LoadBalancer EXTERNAL-IP 생성 외부에서 Pod 접근 가능 할수 있게 해줌 ExternalName 서비스를 .spec.externalName 필드에 설정한 값과 연결한다. 클러스터 안에서 외부에 접근할 때 주로 사용한다. 서비스 사용 설정 apiVersion: v1 kind: Service metadata: name: my-service spec: type: ClusterIP selector: app: MyApp.. 2020. 12. 30.
쿠버네티스 입문 - 6장 컨트롤러 Controller 개념 Pod 를 관리하는 역학을 한다. Replicatoin Controller(레플리케이션 컨트롤러), ReplicaSet(레플리카 셋) Replication Contller 초기부터 있었던 기본적인 컨트롤러 명시한 Pod 개수만큼 유지하도록 해준다. 현재는 ReplcaSet 을 쓴다. ReplicaSet 레플리케이션 컨트롤러의 발전형. 레플리케이션 컬트롤러와 차이점은 집합기반 셀렉터를 지원 한다. (in, notin, exists) rolling-update 옵션 사용불가 설정 apiVersion: v1 kind: ReplicaSet metadata: name: nginx-replicaset spec: template: metadata: name: nginx-replicaset l.. 2020. 12. 30.
쿠버네티스 입문 - 5장 파드 Pod 개념 쿠버네티스에서 실제로 컨테이너를 묶어서 관리하는 단위 설정 apiVersion: v1 kind: Pod metadata: name: simple-pod (Pod 이름) labels: app: simple-pod (오브젝트를 식별하는 레이블) spec: containers: - name: simple-pod (컨테이너 이름) image: ~~~ (컨네이너에서 사용할 이미지) ports: - containerPort: 8080 Pod 생명주기 Pending -> Running Successed Failed Unknown 컨테이너 진단 ivenessProbe 컨테이너가 실행됐는지 확인 실패시 컨테이너를 종료시키고 재시작 정책에 따라서 재시작 readinessProbe 컨테이너 실행된 후 실제로 서.. 2020. 12. 23.
[나는 리뷰어다] Kubernetes Best Practices 쿠버네티스 모범 사례 이 책은 Kubernetes 에 대한 이론적인 내용을 담고 있으면서 각각의 Best Practice 에 대한 내용들을 담고 있다. 실습을 하면서 읽어볼 수도 있고 그런 여건이 되지 않는다면 참고 서적처럼 읽는 방법도 괜찮아 보인다. 나같은 경우는 내용을 따라 해보면서 완독을 했다. 책을 읽으면서 몇가지 좋았던 점과 아쉬웠던 점을 말하고자 한다. 우선 좋았던 점은 책 제목에서 처럼 여러가지 사례들이 많이 담겨 있다는 것이다. Kubernetes 에 대한 이론을 설명해주면서 어떻게 활용하는 것이 좋은 방법인지 알려준다. Kubernetes 를 공부하다 보면 노드에 파드를 생성하고 서비스가 잘 동작하는걸 확인해 보는건 그나마 쉽다. 하지만 그걸 운영에 가져갔을때 어떻게 사용을 해야 올바른 방법인지는 찾기가 좀.. 2020. 12. 17.
IntelliJ Git 스테이징 지원 활성화 하기 IntelliJ 2020.3 의 기능 중에 Git 스테이징 지원 이라는 항목이 있다. 그래서 이걸 써보려고 위에 나와있는 것 처럼 환경 설정을 확인해봤다. 그런데 Git 설정을 들어가 보니 위의 그림처럼 Enable staging area 가 비활성화 되어있다. (처음에는 체크가 안된 상태로 비활성화 되어있었다. ) 이것때문에 한참을 찾았는데 다음과 같이 해결을 하면 된다. Version Control > Commit 항목에 보면 Use non-modal commit interface 라는 항목이 있다. 이걸 체크해주고 apply 해주면 위에 Enable staging area 가 활성화 된다. 활성화를 하고 나면 위와 같이 staged, unstaged 항목을 볼 수 있는 창을 사용할수 있게 된다. 2020. 12. 10.
다른 브랜치에서 pull 하면 어떻게 될까??? Git 을 사용하면서 pull 을 받을때 다른 브랜치를 pull 받는 경우가 있다. 예를 들어서 나는 현재 A 브랜치에서 작업을 하고 있다. 그런데 B 브랜치의 내용을 A 브랜치로 pull 을 받아야 한다. ( 왜 이렇게 사용하냐고 묻는 다면.. 어쩌다 보니 이렇게 사용하게 됐다..) 그래서 한가지 궁금한게 생겼다. 다른 브랜치를 pull 받는것과 merge 하는것과 차이가 있을까??? 그럼 한번 실험을 해보자. - master 브랜치, dev01 브랜치 생성 먼저 위 그림을 보자. 위 상황은 다음과 같다. 1. master 브랜치에서 test1.md 파일 생성후 커밋 2. dev01 브랜치 생성 3. dev01 브랜치에서 test2.md 파일 생성 - dev02 브랜치 추가 , test3.md 파일 추.. 2020. 12. 7.
Mac 업데이트 후 xcrun 에러 사용중인 맥북을 Big Sur 로 업데이트 했더니 git 사용시 다음과 같은 에러가 났다. ➜ ~ git xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun 해결 방법은 다음과 같다. xcode-select --install 이렇게 설치를 해주면 해결이 된다. 2020. 11. 23.
728x90
반응형