일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- kotlin querydsl
- 정보처리기사 실기
- kotlin coroutine
- 정보처리기사 실기 기출문제
- kotlin
- aws
- 코틀린 코루틴의 정석
- PETERICA
- CKA
- MySQL
- AI
- Pinpoint
- 정보처리기사실기 기출문제
- Linux
- kotlin spring
- CloudWatch
- CKA 기출문제
- Java
- minikube
- IntelliJ
- APM
- 기록으로 실력을 쌓자
- AWS EKS
- 티스토리챌린지
- 공부
- Kubernetes
- mysql 튜닝
- Elasticsearch
- 오블완
- Spring
- Today
- Total
목록분류 전체보기 (798)
피터의 개발이야기
ㅁ 개요 ㅇ AWS EKS 1.20 지원일이 2022년 11월 1일까지이다. 현재 사용중인 1.20에서 1.21으로, 다시 1.22로 업그레이드 할 예정이다. ㅇ 실질적인 EKS 버젼업 작업을 하기 전에 kubernetes 스키마 유효성 검사를 수행하는 방법에 대해서 정리하였다. ㅁ Amazon EKS Kubernetes 릴리스 일정 ㅇ 자세한 내용은 이곳에서 확인할 수 있다. ㅁ kubernetes 클러스터, dry-run Kubernetes CLI(kubectl)에는 클러스터에 적용되기 전에 리소스를 확인할 수 있는 기능이 있다. 클러스터에 Kubernetes 리소스를 적용하지 않고 유효성 검사를 수행하는 kubectl create 또는 kubectl apply 명령을 수행할 때 dry-run ( -..
[kubernetes] 개발환경 목차 ㅁ kubernetes 로컬 개발 환경의 한계 Kubernetes 는 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화하기 위한 탁월한 도구이다. 하지만 Kubernetes의 로컬 개발환경은 고통스러운 프로세스일 수 있다. 일반적인 워크플로를 설명하자면, 로컬에서 코드의 수정 및 기능 테스트를 확인하고, 도커 이미지를 빌드 및 태그 지정하고, 배포 구성을 만들고 Kubernetes에 배포한다. 버그가 있거나 업그레이드가 필요한 경우 개발자는 처음부터 동일한 절차를 따라야 한다. ㅁ Skaffold란? Skaffold는 Kubernetes 네이티브 애플리케이션을 위한 지속적인 개발을 용이하게 하는 CLI 도구이다. Skaffold는 애플리케이션을 빌드, 푸시 및..
[kubernetes] 개발환경 목차 ㅁ 개요 ㅇ DevOps 개발자로서 k8s schema를 편집할 일이 자주 발생한다. ㅇ 편집된 k8s에 대한 보안적, 문법적 이슈에 대해서 검증해 줄 수 있는 Datree를 사용 중이다. ㅇ 자동완성기능과 쿠버네티스 타켓 버젼을 바꾸는 방법을 정리하였다. ㅁ 자동완성기능 $ echo 'source
ㅁ 개요 ㅇ 이글은 [EBS] EKS 생성, MongoDB 구성, gp2에서 gp3 EBS 볼륨으로 마이그레이션 에서 이어지는 글이다. ㅇ CSI Driver 설치 없이 AWS Console에서 gp2에서 gp3로 타입변경을 한 상태에서 포퍼먼스 테스트를 진행하려 한다. ㅇ 테스트를 위한 gp2 생성과 테스트 pod는 AWS 문서를 참조하였다. ㅁ Storageclasses gp2에 대한 이해 [ec2-user@ip-172-31-43-214 gp3Test]$ kubectl get sc gp2 NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE gp2 (default) kubernetes.io/aws-ebs Delete Wai..
ㅁ 개요 ㅇ MonogoDB의 볼륨이 gp2로 구성되어 있는 것을 gp3로 변경 테스트환경 구성과정 정리 ㅇ EKS에 CSI Driver를 설치 하지 않고 AWS Console에서 gp3 업그레이드 후 볼륨 접속 확인 ㅁ EKSCTL를 이용한 EKS 생성 및 확인과정 $ eksctl create cluster --name k8s-peter --region ap-northeast-2 --version 1.20 --nodegroup-name work-nodes --nodes 1 --nodes-min 1 --nodes-max 3 --node-type t3.medium --node-volume-size=20 --with-oidc --ssh-access --ssh-public-key aws-login-key --..
ㅁ 개요 ㅇ 생성되어 있는 CloudFormation 스택을 삭제하는 과정 정리 ㅁ 삭제 이유 ㅇ EKS는 유지하는 비용이 발생한다. 그래서 사용하지 않은 EKS는 삭제처리 하였는데, CloudFormation의 스택은 그대로 남아있었다. ㅇ CloudFormation의 비용은 발생하지 않는다. 다만 생성된 스택의 리소스만 비용이 발생한다. ㅇ 기타 리소스도 깔끔하게 정리하기 위해 삭제처리한다. ㅁ 스택 조회 ㅇ eksctl-k8s-demo-cluster를 삭제하려고 한다. ㅇ 스택을 선택하고 삭제를 클릭한다. ㅁ 삭제 시 모든 스택 리소스 삭제 ㅇ CloudFormation으로 구성된 스택의 리소스를 확인할 수 있다. ㅇ 스택 삭제 작업 중에 선택한 리소스는 삭제를 하지 않느다. ㅁ 삭제 진행 중, D..
ㅁ 헬렘 설치하기 $ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 $ chmod 700 get_helm.sh $ ./get_helm.sh ㅁ 설치 확인 helm version ㅁ 헬렘 자동완성기능 추가 # helm zsh 자동완성기능 추가 $ echo 'source > ~/.bashrc [ec2-user@ip-172-31-43-214 ~]$ helm completion (generate autocompletion scripts for the specified shell) push (push a chart to remote) create (create a new chart with t..
ㅁ 개요 ㅇ 운영하다보면 데이터를 직접 헨들링할 경우가 있다. ㅇ 반복적인 작업을 대량으로 수행하기 위해 File내용을 기반으로 처리할 수 있도록 하였다. ㅇ redis의 작업을 수행하면서 오류를 최소화하고 작업이력을 남기기 위해 스크립트를 작성하였고, 그 과정을 정리하였다. ㅁ Script #!/bin/sh LOG="./redis.log" COMMAND=$1 REDIS_KEY=$2 FILE=$3 TODAY=$(date) # 필수값 체크 if [ $# -ne 3 ] then echo "param error [command / key / file]" exit 0; fi echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" echo ">> START : $TODAY" >> $LOG ec..
ㅁ 개요 ㅇ linux 서버에서 JSON 데이터를 볼 때가 많이 있다. 직렬화된 json을 보기는 쉽지 않다. ㅇ 이를 해결하기 위한 방법으로 jq명령어를 사용하면 JSON을 이쁘게 볼 수 있다. ㅁ 설치 ㅇ 맥의 경우 brew install jq ㅁ 사용법 ㅇ JSON string 파이프라인으로 재처리 하면 이쁜 JSON을 볼 수 있다.$ echo '{"foo": "bar"}' | jq ✔ 5238 23:20:52{ "foo": "bar"}$ echo '{"foo": "bar"}' | jq '.foo' ..
ㅁ 개요 ㅇ kubernetes 환경으로 Redmine을 구성하는 과정을 정리하였다. ㅇ 중간에 예행연습으로 생성한 redmine의 볼륨의 영향으로 트러블이 발생하여 PV를 삭제한 후 재설치하여 정상 설치가 되었다. ㅁ Helm Remote Repository 연결 helm은 잘 구축된 템플릿을 원격 리파지토리를 이용하여 손쉽게 가져올 수 있다는 강점이 있다. 쿠버네티스 생태계에서 잘 짜여진 템플릿을 사용하여 원하는 환경을 빠르게 구축할 수 있다. 우선적으로 원격 저장소를 연결해야 한다. # 원격 저장소 리스트 확인 $ helm repo list Error: no repositories to show # 원격 저장소 추가 helm repo add stable https://charts.helm.sh/st..