일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Jenkins
- 자동
- 클러스터
- Docker
- Mac
- EMR
- aws
- login
- 로그인
- spring
- fastcampus
- 설정
- 자바
- Cluster
- gradle
- 간단
- 레디스
- 머신러닝
- java
- Redis
- SpringBoot
- vue
- ec2
- 젠킨스
- redash
- hive
- Kafka
- Zeppelin
- config
- 예제
- Today
- Total
목록전체 글 (193)
코알못
클러스터에 구축한 파드에 접근하기 위해서는 어떻게 해야 할까 ? Pod IP는 클러스터 내부에서만 접근 가능하므로 외부에서 접근이 불가능하다. 우리는 이를 위해 Service 오브젝트를 사용하면 된다! 서비스 오브젝트를 이용하면 파드 집합에 대해 단일 엔드 포인트로 접근 가능하며 로드 밸런서 기능을 이용할 수 있다! 주의 사항은 pod보다 서비스가 먼저 생성 되어야하고 같은 네임스페이스에 있는 파드만 관리한다. Service 오브젝트의 타입은 세가지로 아래와 같으며 목적에 맞게 사용하면 된다. 서비스 타입 설명 ClusterIP 외부에서 접근 불가능 Internal IP만 할당, External IP 할당 받지 않음 내부 통신 목적시에 사용 internal IP를 클러스터 내부에서 호출하면 적합한 파드로..
저번시간에 Deployment 배포 전략 두가지에 대해서 간단하게 개념을 배웠고 이번시간 실습을 통해 익혀보도록 하자! 추가로 롤백 하는 방법도 알아보도록 하며 실습 내용은 아래와 같다. 배포전략 Recreate 실습 배포전략 RollingUpdate 실습 Revision 을 통한 롤백 실습 우선 배포전략 Recreate 실습을 진행해보자! 아래와 같이 Deployment 오브젝트 yaml 파일을 작성한다. # deployment-v4.yaml apiVersion: apps/v1 kind: Deployment metadata: name: my-app labels: app: my-app spec: replicas: 3 selector: matchLabels: app: my-app strategy: type..
이전 시간에는 ReplicaSet 을 통해 새 버전으로 배포하는 방법을 배웠다. 다시 복습하자면 세개의 작업을 통해 롤백이 가능하다. 새 버전으로 template 수정 기존 버전 파드 삭제 (scale 또는 lable 변경) 새 버전 파드 생성 만약 장애 상황이라면 급하게 해당 작업을 처리해야하는 상황이 오기도 한다. 사람이 아닌 쿠버네티스가 자동으로 해줄수 없을까? > Deployment 오브젝트를 사용하면 된다! Deployment는 Pod 배포 자동화를 위한 오브젝트로 새로운 Pod를 롤아웃/롤백 할때 ReplicaSet 생성, Pod 복제를 대신 해준다. Deployment는 ReplicaSet을 이용하여 배포하며 아래와 같이 두가지 배포 전략을 가지고 있다. 배포전략 설명 Recreate 모든 ..
이번 실습 시간에는 1) Pod 수 조정하는 실습과 2) 롤백하는 실습을 진행해보도록 한다. 1) Pod 수 조정하는 실습 우선 replicaset 생성할 수 있는 파일을 만든다. # replicaset-v3.yaml apiVersion: apps/v1 kind: ReplicaSet metadata: name: myapp spec: selector: matchLabels: app: my-app replicas: 1 template: metadata: labels: app: my-app env: prod spec: containers: - name: my-app image: yoonjeong/my-app:1.0 ports: - containerPort: 8080 resources: limits: memor..
이번 시간에는 1) pod를 임의로 종료 하였을시 어떻게 ReplicaSet이 동작하는지 확인 하는 실습과 2) template를 수정하는 실습을 진행해보도록 한다! 1) pod를 임의로 종료 하였을시 어떻게 ReplicaSet이 동작하는지 확인 하는 실습 우선 ReplicaSet으로 Pod 를 생성한다! 아래와 같이 yaml 파일을 작성하고 # replicaset.yaml apiVersion: apps/v1 kind: ReplicaSet metadata: name: blue-replicaset spec: replicas: 3 selector: matchLabels: app: blue-app template: metadata: labels: app: blue-app spec: containers: - n..
만약 Pod를 필요한 수 만큼 유지 할 수 있도록 관리(장애가 나서 Pod가 죽었을시 자동 복구) 해줄수 있는 기능이 있다면 얼마나 좋을까!? ReplicaSet 오브젝트를 사용하면 된다! ReplicaSet 의 경우 아래와 같은 구조를 가지며 apiVersion: apps/v1 kind: ReplicaSet metadata: name: blue-app-rs labels: app: blue-app spec: selector: matchLabels: app: blue-app replicas: 3 template: metadata: labels: app: blue-app spec: containers: - name: blue-app image: blue-app:1.0 각각 설명은 아래 표를 참고한다. 구분 ..
예시는 ldap에 corin, test 라는 유저가 있고 해당 계정으로 zeppelin 로그인하여 스파크를 사용하며 스파크로 접근 가능한 테이블을 ranger로 권한 제어 하는 예시이다. 아래 두 스크립트 생성 (master, core, task, spot 모든 노드에 적용되는 스크립트로 EMR 부트스트랩에 등록 예정) ranger_host_setting.sh sudo chmod 777 /etc/hosts echo '172.X.X.X ranger.X.co.kr' >> /etc/hosts linux_adduser.sh USER_LIST='corin test' for USER in $USER_LIST; do sudo adduser $USER done 아래 두 스크립트 생성 (마스터 노드에서만 실행되는 스크립..
레인저 설정 수정 방법 순서 설명 명령어 1 Ranger 서버 접속 ssh -i data.pem ec2-user@[ranger ip] 2 설정 관련 Properties 수정 sudo vi /usr/lib/ranger/ranger-release-ranger-2.1.0/install.properties 3 Properties에서 수정된 부분 설정 파일에 적용 sudo -E env /usr/lib/ranger/ranger-release-ranger-2.1.0/setup.sh 4 설정 수정된 부분 확인 sudo cat /usr/lib/ranger/ranger-release-ranger-2.1.0/conf/ranger-admin-site.xml 5 Ranger 서비스 재기동 sudo ranger-admin res..