공부합시다!/Kubernetes
-
Kubernetes (K8S): Object - 6-3. Storage: Persistent Volume공부합시다!/Kubernetes 2022. 12. 26. 00:11
K8S에서 제공하는 Storage 유형은 volume, Persistent Volume, Projected Volume, Storage Class, 임시 볼륨 등으로 다양하며 스냅샷 및 복제가 가능하며 스토리지 용량을 제한하는 등의 기능을 수행한다. 오늘은 가장 많이 사용하는 volume과 persistent volume에 대해서 학습합니다. 1. Volume의 필요성 1.1. Container간의 Data 공유 1.2. Contraier의 문제가 발생 시 Container는 재시작 또는 다시 생성하면 되지만 Data 보존은? 이런 문제를 해결할 수 있는 것이 K8S의 Volume 추상화 2. Storage 유형 2.1. volume 2.2. PV(Persistent Volume)와 PVC(Persist..
-
Kubernetes (K8S):실습2: 각기 다른 POD의 wordpress + mysql공부합시다!/Kubernetes 2022. 12. 23. 10:48
각기 다른 pod에서 실행되는 wordpress 와 mysql의 연동은? 일단 ip address를 이용한 연결 방법을 소개합니다. 명령어로만 실행해서 접속하는 방법입니다. 단 제약사항은 wordpress 5.7 이상의 경우 아래와 같은 방법으로는 환경변수가 설정이 되지 않습니다. secret을 이용하셔야 합니다. 해서 wordpress5.6을 이용합니다. 1. mysql 설치 2. wordpress 5.6 설치 3. service nodeport 구성 4. test 순서입니다. 1. mysql 설치 1.1. mysql 설치 # kubectl run mysql --image=mysql:5.7 --port=3306 \ --env="MYSQL_ROOT_PASSWORD=It12345@" \ --env="MYS..
-
Kubernetes (K8S):실습1: 동일POD내의 wordpress + mysql공부합시다!/Kubernetes 2022. 12. 23. 10:47
모든 실습의 끝은 wordpress + mysql 접속 입니다. 오늘은 단일 pod내에서 wordress container와 mysql:5.7 container를 생성, pod를 nodeport로 연결해서 외부에 서비스하는 실습을 진행하겠습니다. 동일 pod내애서 두 개이상의 container를 실행하는 것을 MultiContainer라고 합니다. 기억해두세요! -> Multi Container 유형 sidecar adapter ambassador K8S에서는 pod에는 한 개의 Container를 지향합니다. 이런 구성은 권장하지 않습니다만 학습용으로! 아 그리고 꼭 kubectl cheat sheet 한번들 읽어 보세요! https://kubernetes.io/docs/reference/kubectl..
-
Kubernetes (K8S): 설치 영상: 2022년 12월 21일 Test공부합시다!/Kubernetes 2022. 12. 21. 14:19
일단은 기존의 스크립트 파일을 가지고 계셔야 합니다. 192.168.108.3 master master.labs.local 192.168.108.4 node1 node1.labs.local 192.168.108.5 node2 node2.labs.local 192.168.108.6 node3 node3.labs.local 이런 환경일 겁니다. 본인들 환경에 맞게 스크립트 파일 수정이 필요합니다. # /etc/hosts 파일 부분에 위의 파일 붙여넣기 하세요 그리고 master 부분의 # sed -i 's/advertiseAddress: 1.2.3.4/advertiseAddress: 192.168.108.3/' kubeadm-init.yaml 변경하세요. 과정은 아래 동영상에 있습니다. 안된다고 포기하지 말..
-
Kubernetes (K8S): Labels -1공부합시다!/Kubernetes 2022. 8. 3. 20:07
Cloud에서 Tag는 자원을 그룹화하기 위해서 많이 사용합니다. 역할 또는 기능별로.... 일례로 3Tier의 Resource인 WEB+WAS+DB를 하나의 Tag로 그룹화 할 수도 있고 WEB or WAS or DB등의 기능 서버별로 Tag를 사용하여 그룹화 할 수 있습니다. K8S에서 바로 이러한 역할을 수행하는 것이 Label 입니다. 오늘은 Kubectl 명령어를 이용한 Label 생성, 삭제, 업데이트 작업에 대해서 알아보겠습니다. 1. 생성 및 추가 2. 삭제 및 업데이트 3. POD 전체 생성, 업데이트, 삭제 특정 Tag를 갖은 자원을 특정한 Node에 배포할 때 이용하면 유용하게 사용할 수 있습니다. 그럼 다음시간에는 위의 실습을 진행해 보겠습니다.
-
Kubernetes (K8S): Object - 2.5. ReplicaSet공부합시다!/Kubernetes 2022. 7. 26. 21:12
K8S에서 POD는 Down 될 수 있는 Resource로 간주됩니다. 수많은 POD중에서 한두개의 POD Down은 그닥 큰 문제가 되지 않습니다. 하지만 K8S의 메니페스트는 항상 올바른 상태를 유지하기 위해서 동작합니다. 오늘은 POD의 Replicaset에 대해서 포스팅 합니다. 1. Nginx ReplicaSet 생성 메니페스트 파일 1.1. vi rep.yml apiVersion: apps/v1 kind: ReplicaSet metadata: name: test-rep labels: app: test-replicas spec: replicas: 2 selector: matchLabels: app: test-replicas template: metadata: name: nginx-rep labe..
-
kubernetes 명령어공부합시다!/Kubernetes 2022. 7. 21. 13:22
Kubernets 제어 명령어는 kubectl 입니다. 1. kubectl 명령어 형식 kubectl 커맨드 옵션 2. kubectl 주요 커맨 Command 동작 비고 create Resource 생성 edit Resource 편집 delete Resource 삭제 get Resource 상태 출력 set Resource 값 설정 apply Resource 변경 사항 반영 describe 상세 정보 확인 diff "현재 상태"와 "바람직한 상태" 차이 확인 expose 여러 POD에 부하는 분산하는 Service Object 생성 scale Replica 수 변경 auotscale 자동 Scaling 적용 rollout Rollout 수행 exec Container에서 명령 실행 run Containe..
-
Kubernetes (K8S): Secret공부합시다!/Kubernetes 2022. 6. 23. 06:33
오늘은 환경 변수 중 보안이 필요할 때 사용하는 secret에 대해서 알아보겠습니다. 2022.06.22 - [공부합시다!/Kubernetes] - K8S : ConfigMap 결합하면 wordpress + mysql 구성이 됩니다. secrte 역시 configmap과 동일하게 환경 변수를 저장하고 pod를 실행할 때 환경변수를 제공해 줍니다. 차이점은 비밀번호, token, db정보등의 민감한 정보를 저장하는 용도로 사용됩니다. node의 파일에 저장되는 것이 아니라 메모리에 저장되기 때문이 접근이 어려우며 과다한 secret의 사용은 메모리 사용량 증가로 overhead가 발생함으로 적절하게 사용해야 합니다. mysql을 configmap과 secret 을 이용해서 pod을 생성해 보겠습다. 1. ..