일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정보처리기사 실기
- MySQL
- AWS EKS
- kotlin querydsl
- 정보처리기사 실기 기출문제
- PETERICA
- kotlin coroutine
- kotlin spring
- 정보처리기사실기 기출문제
- aws
- CKA
- kotlin
- Pinpoint
- CloudWatch
- Elasticsearch
- AI
- 코틀린 코루틴의 정석
- Spring
- 오블완
- Kubernetes
- Java
- APM
- 기록으로 실력을 쌓자
- CKA 기출문제
- Linux
- minikube
- 티스토리챌린지
- mysql 튜닝
- IntelliJ
- 공부
- Today
- Total
목록DevOps (129)
피터의 개발이야기
ㅁ 관련 글 ㅇ [Elasticsearch] EFK(Elasticsearch, Fluentd, kibana)란 ㅇ [Elasticsearch] EFK 설치(minikube)-1 ㅇ [Elasticsearch] EFK 설치(minikube)-2 ㅁ 개요 AWS Kubernetes환경에서 EFK(Elasticsearch, Fluentd, kibana) 구축하는 과정을 정리하였다. ㅁ EFK란? EFK란 Elasticsearch + Fluentd + Kibana의 단순말이다. 쿠버네티스환경에서 수많은 컨테이너의 로그를 수집하여 통합적으로 로그를 UI로 확인할 수 있는 인터페이스이다. 오케스트레이션 환경에서 파드가 생성되고 삭제되는 과정에서 로그를 관리하기란 어려운 일이다. 이를 해결하기 위해 쿠버네티스에서 E..
ㅁ 개요 ㅇ 젠킨스 플러그인 에러 조치 ㅇ Update required: Pipeline: Stage Tags Metadata ㅁ 에러 내용 Some plugins could not be loaded due to unsatisfied dependencies. Fix these issues and restart Jenkins to re-enable these plugins. Dependency errors: Pipeline: Declarative (2.2114.v2654ca_721309) Update required: Pipeline: Stage Tags Metadata (pipeline-stage-tags-metadata 2.2097.v33db_b_de764b_e) to be updated to 2.21..
ㅇ DevOps는 일종의 문화이다. 개발과 운영을 통합하여 전인적인 개발자로 성장할 수 있는 길이라고 생각한다. 전체를 바라보고 미쳐 알지 못했던 DevOps로서 알아야 할 덕목들을 한분에 볼 수 있는 로그맵을 발견하려 글을 남겨본다. DevOps는 한사람으로 하여금 정말 많은 역할을 수행할 수 있는 기술력을 갖추게 한다.
ㅁ Amazon ECR plugin 에러 발생 Amazon ECR Failed to load: Amazon ECR plugin (amazon-ecr 1.6) - Failed to load: Amazon Web Services SDK :: All (aws-java-sdk 1.12.215-339.vdc07efc5320c) Amazon Web Services SDK :: All Failed to load: Amazon Web Services SDK :: All (aws-java-sdk 1.12.215-339.vdc07efc5320c) - Plugin is missing: aws-java-sdk-codebuild (1.12.215-339.vdc07efc5320c) ㅁ 프로젝트 빌드 실패 ERROR: Could ..
ㅁ 개요 ㅇ 개발 젠킨스 플러그인이 문제가 발생하여 이를 조치하는 과정을 정리하였다. ㅁ Dependency errors Dependency errors: SSH Credentials Plugin (277.v95c2fec1c047) Update required: Trilead API Plugin (trilead-api 1.0.8) to be updated to 1.0.13 or higher Jackson 2 API Plugin (2.13.3-285.vc03c0256d517) Update required: JAXB plugin (jaxb 2.3.0) to be updated to 2.3.6-1 or higher Jenkins GIT server Plugin (1.11) Update required: SSH..
ㅁ 개요 ㅇ API 요청에 대한 상세정보의 히스토리 관리를 위해 사용하고 있던 MongoDB에 부하가 발생하였다. ㅇ 부하의 원인이 된 요청을 찾고 Kill하여 부하를 해소하였고, 그 과정을 정리하였다. ㅁ 장애인지 ㅇ MongoDB가 사용하는 볼륨의 DISK I/O가 96%가 넘었다고 알람이 발생하였다. ㅇ DISK I/O가 100%가 되었다. ㅇ CPU 사용량을 30%미만이었고, DISK I/O만 높은 상태였다. ㅇ 히스토리 관리를 위한 저장용으로 사용하다보니 단건에 대한 확인용으로만 설계되어 있어서 Collection당 많은 데이터가 존재하였다. ㅇ Key값이 아닌 다른 비교조건을 넣는 경우 상당한 데이터가 조회되는 구조였다. ㅇ 어떤 요청인지 정확히 알 수는 없지만(사실 원인파악보다 ..
ㅁ 개요 ㅇ 로켓챗에 시스템 알람을 표시 하기 위해 Incommong WebHook을 생성하고 알람을 발송하는 과정을 정리하였다. ㅁ Admin Panel로 이동 ㅁ 인티그레이션 ㅇ 인티그레이션을 클릭한다. ㅇ Incoming 선택 후 + New를 클릭한다. ㅁ Incoming Webhook 생성 ㅇ 활성화를 체크한다. ㅇ #MonitoringAlarm 채널을 입력한다. ㅇ peter 작성자를 등록. ㅇ 채널에 표시될 Alias를 넣는다. MonitoringAlarm로 입력하였다. ㅇ 아바타로 👻 를 선택하였다. ㅇ 스크립트 사용을 활성화 한다. /* exported Script */ /* globals console, _, s */ /** Global Helpers * * console - A norm..
ㅁ 개요 ㅇ 로켓챗은 DevOps에서 중요한 역할을 한다. 개발자의 의사소통 및 정보 공유가 빠르며 쉽게 이루어지도록 도와주기 때문이다. ㅇ 로켓챗을 세팅하고 다루어보기 위하여 Docker 기반으로 설치하는 과정을 정리하였다. ㅁ Rocket.Chat 설치과정 ㅇ linux와 ubuntu에 직접 설치하는 과정을 예시도 있지만 제일 간단한 방법은 Docker로 설치하는 방법이다. ㅇ Rocket Chat의 문서를 기반으로 설치하였다. 바로가기 ++ Rocket.Chat Docker 및 Docker Compose 설치 ㅇ기본적으로 Docker와 Docker-compose가 설치가 되어 있어야 한다. ㅇ 원하는 디렉토리를 생성하여 docker-compose.yml를 다운받는다. # docker 버젼확인 doc..
ㅁ 개요 ㅇ nGrinder 도커 환경 구성 후 간단 실행 과정을 정리하였다. ㅁ 간단 실행 방법 ㅇ google을 테스트 URL로 설정하였다. ㅁ 테스트 생성 ㅇ Test for www.google.com이 생성되었다. ㅁ 테스트 설정 ㅇ Agent : Agent수, Controller에 연결승인된 수만큼까지만 지정할 수 있다. ㅇ 에이전트별 가상사용자 : Agent당 가상 유저수, Process와 Thread로 구성한다. ㅇ 스크립트 : 테스트할 스크립트 ㅇ 테스트 대상 서버 : 테스트 대상 호스트 ㅇ 테스트 시간 : 테스트할 시간 ㅇ 실행 횟수 : 테스트 실행 횟수(각 Thread당으로 전체 실행 횟수는 Vuser per agent를 곱한 값이다) ㅇ Ramp-Up 사용 : 트래픽을 서서히 증가하게..
ㅁ 개요 Redis slowlog를 모니터링하는 중 KEYS가 롱쿼리로 감지되어, SCAN으로 변경하여 Redis Blocking 시간을 최소화한 과정을 정리하였다. ㅁ Redis 모니터링의 필요성 ㅇ 현재 내가 담당하는 시스템은 대량 트래픽을 처리하고 있다. 그래서 메인 디비로 Redis를 사용하고 있다. ㅇ 고성능 고가용성을 위해 쿠버네티스 환경으로 구축되었고, 어플리케이션 내의 개별 프로세스도 비동기형태로 구현되어 있다. ㅇ RDS의 처리 속도가 보장되지 않아 Redis를 사용하고 있기 때문에 Redis의 slowlog확인을 통해 10ms 이상인 것은 지속적으로 튜닝을 해야만 전체 서비스의 TPS를 보장할 수 있다. ㅁ Grafana Slow log 확인 ㅇ HKEYS 명령어가 10ms 이상 발생하..