-
[Grafana] Legend의 Display Name
환경 Grafana v9.4.3 문제 상황 Grafana 에서 Legend가 정상적으로 표시되지 않을 때가 있다. 이 때 오른쪽 설정(grafana v9.4.3)의 Standard options > Display Name을 변경하면 값이 바뀐다. 다만, 원하는 Display name을 고정으로 작성하면 모든 Legend가 전체적으로 변경된다. 이를 방지하기 위해선 아래와 같이 작성해야한다. ${__series.name} ${__field.labels} ${__field.labels.__values} Display Name에 위와 같이 작성하면 유기적으로 변경할 수 있다. 관련내용을 Grafana Docs에서도 확인할 수 있다. 레퍼런스 https://grafana.com/docs/grafana/lates..
2023.03.14
-
[GCP] Cloud Run과 Cloud Build를 사용하여 Spring Boot 배포하기
시스템 아키텍처 Local 설정 Spring Boot의 application-prod.yml 설정 Github에 DB 정보를 올릴 수 없고, 없으면 서비스를 실행할 수 없기에 보안 문제가 발생하지 않고 DB정보를 컨테이너에 담을 수 있을지 고민했다. 결과적으로 환경변수를 사용하기로 했다. 위와 같이 설정하면 application-prod.yml에 시스템 환경변수 값을 불러올 수 있다. Dockerfile 설정 Cloud Run의 경우 컨테이너 기반으로 서비스를 실행하기 때문에 도커를 활용하여 빌드하였다. FROM adoptopenjdk/openjdk11 COPY gradlew . COPY gradle gradle COPY build.gradle . COPY settings.gradle . COPY src..
2022.12.05
-
[Microk8s] 쿠버네티스 기본 실습
쿠버네티스란? Kubernetes 클러스터는 안정적이고 확장 가능한 방식으로 컨테이너화된 애플리케이션을 호스팅합니다. DevOps를 염두에 두고 Kubernetes는 업그레이드와 같은 유지 관리 작업을 매우 간단하게 만듭니다. MicroK8s란? MicroK8s 는 워크스테이션이나 개인 장치에서 실행하기 위한 용도로 사용되며 K8s의 경량화 버전이라고 보면 쉽습니다. MicroK8s는 실제 쿠버네티스처럼 타 컴퓨터와도 연결이 가능하며 K8s에서 사용하는 대부분의 기능을 지원합니다. Linux Ubuntu는 MicroK8s와 호환성이 가장 좋은 OS이며 설치 또한 어렵지 않습니다. 테스트 환경 Welcome to Ubuntu 20.04.5 LTS (GNU/Linux 5.15.0-1025-gcp x86_64..
2022.12.07
-
[한이음 2022] MSA기반 인사 관리 시스템 Popool
본 게시글은 2022년 한이음 ICT멘토링 공모전의에 참여하여 Popool 서비스를 개발한 과정과 소개를 담고 있습니다. Introduce 대규모 트래픽에 유동적으로 대응 가능한 Micro Service Architecture 를 이해하고 설계하며 Netflix의 Eureka와 AWS Elastic Banstalk 서비스를 활용하여 클라우드 네이티브한 형태의 아키텍처를 구현 Role Devops Engineer & Backend Engineer Spring Cloud Eureka와 Spring Config Server 그리고 Github Actions를 활용한 MSA 멀티모듈 배포에 집중 Architecture AWS Service Amazon Elastic Beanstalk Amazon Simple S..
2023.06.04
-
[Continuous Deploy] Github actions .env 파일 관리하기 with Github private repository
목적 Continuous Deploy 과정에서 Dotenv 파일을 꽤 번거로운(?) 녀석이다. 보안상 Github repository에 push하긴 찝찝하다. 그래서 이 파일을 Continuous Deploy 과정에서 리눅스의 Echo & Cat 과 Github Actions Secret Key를 사용해서 만들어줬는데, 가독성과 관리면에서 "이게 맞나?" 싶다. 이를 해결하기 위한 첫번째 방법을 찾아서 기록해본다. 사용 된 아키텍처 Github Public & Private Repository는 빌드될 파일이 있는 레포지토리를 뜻하며 Github Private Repository는 .env 파일이 따로 보관되어 있는 Repository를 뜻한다. 위 두가지를 한개의 계정으로 진행할 수 있지만 본 글에서는..
2022.10.14
-
[Grafana] Unit, Decimals ( 단위, 소수점 )
환경 Grafana v9.4.3 문제상황 데이터의 단위를 명확하게 정의하면 해당 단위에 맞게 표기형식을 변경해준다. 예를들어 데이터의 기본 단위가 bytes로 이뤄져 있다면 오른쪽 설정 중 Standard options의 Unit을 변경하면 된다. 예를들어 파일 용량을 담은 데이터가 있고 값의 기본 단위가 bytes면 Unit을 bytes로 변경해보자. 숫자 형식에 따라 Byte, KB, MB, GB 와 같이 형식에 맞게 값을 변경해준다. 더불어 단위가 변경되면서 소수점 자리가 생기게 되는데 아무것도 설정하지 않으면 정수의 형태로 출력된다. 이럴때는 Decimals를 사용하여 소숫점을 통해 더 자세하게 표현하거나 생략할 수 있다.
2023.03.14
-
[Kafka] AWS EC2에 설치하기
시작하며 본 내용은 2022년 11월 16일 Boaz 세션에서 발표된 내용입니다 글 목표 AWS EC2에 Kafka를 직접 설치하고 토픽, 프로듀서, 컨슈머를 설치하기 프레젠테이션 from datetime import datetime import threading, time from kafka import KafkaAdminClient, KafkaConsumer, KafkaProducer from kafka.admin import NewTopic #카프카 프로듀서 운영 객체 class Producer(): bootstrap_servers='43.201.95.87:9092' def sendMessage(self,topic_name:str, message:str): '''Set Message to Produ..
2022.11.18