일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Docker
- 설정
- fastcampus
- 레디스
- Kafka
- ec2
- redash
- aws
- EMR
- 간단
- login
- gradle
- 예제
- vue
- config
- 로그인
- 자동
- spring
- 젠킨스
- Zeppelin
- 자바
- 클러스터
- 머신러닝
- Mac
- Redis
- Jenkins
- Cluster
- java
- SpringBoot
- hive
- Today
- Total
목록ETC (82)
코알못
이전 시간에는 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..
Yarn 집계 로그가 하둡 용량(EC2 로컬)을 많이 차지하여 저장소를 S3로 변경 하고자 하였다. 아래와 같이 설정하며 (반드시 \/ 로 경로 구분, 로그 경로는 하위 단계가 여러개도 가능) { "Classification": "yarn-site", "Properties": { "yarn.log-aggregation-enable": "true", "yarn.log-aggregation.retain-seconds": "-1", "yarn.nodemanager.remote-app-log-dir":"s3:\/\/[버킷경로]\/[로그경로]" } }, Ranger가 적용된 EMR 에서는 아래 오류 로그가 발생하며 로그가 S3에 저장되지 않았다. 2023-05-16 05:06:57,978 WARN org.apac..
이번 시간에 두가지 실습을 진행해보도록 한다! 첫번째. Label, Selector 기본 명령어 연습 두번째. Selector로 선택하여 배포 이제 실습을 진행해보도록 하자! 첫번째. Label, Selector 기본 명령어 연습 테스트를 위해 우선 4개의 yaml 을 만들어본다..! # rose-app.yaml apiVersion: v1 kind: Pod metadata: name: rose-app labels: group: nature spec: containers: - name: rose-app image: yoonjeong/red-app:1.0 ports: - containerPort: 8080 env: - name: NODE_NAME valueFrom: fieldRef: fieldPath: sp..