본문 바로가기

분류 전체보기142

Centos7 도커 이미지로 빌드하기 with Dockerfile 윈도우에서 Docker 이미지 build, push와 리눅스 실행하기 팀에서 새 버전의 프로그램을 출시할때마다 항상 리눅스 OS환경을 구축하고 환경 설정하고 이거하고 저거하고 그러다 작업중에 꼬이기라도 하면 다시 설치해야 되서 시간도 오래걸리고 스트레스받고 여간 불편한 일이 아니었습니다. 최근에 클라우드 프로젝트를 계속 진행하면서 도커, 컨테이너에 대한 개념도 익숙해졌고 이번 기회에 제품 테스트용 리눅스 OS를 도커 이미지로 만들어서 어느 환경에서든지 쉽게 리눅스 OS를 구축할수 있도록 해보았습니다. 이 글에서 다루는 내용 Centos7 기본 Docker Image을 활용한 커스텀 OS 환경 만들기 (Dockerfile) 도커 이미지 빌드하기 도커 이미지 Docker Hub에 푸시하기 도커 컨테이너/이미.. 2023. 9. 25.
[Spring] 웹소켓(Websocket) 1:1 통신, HandshakeHandler [Spring] 웹소켓(Websocket) 응용 1:1 통신 웹소켓 1:1 통신, @SendToUser 지난번에 작성했던 웹소켓 가이드에서는 서버에 연결된 모든 클라이언트들과 통신하는 방법에 대해 설명했었습니다. 이번에는 1:n이 아닌 1:1 통신에 대해 설명해보겠습니다. 웹소켓을 처음 학습한다면 [Spring] 웹소켓(Websocket) 개념과 예제 글을 먼저 보시기 바랍니다. 웹소켓으로 1:1 통신을 하기 위해서는 @SendTo어노테이션이 아닌 @SendToUser어노테이션을 사용해서 컨트롤러를 구성합니다. @SendToUser는 WebSocket을 사용하여 특정 클라이언트에게 메시지 전달기능을 구현할수 있게 하는 어노테이션입니다. 1:N 방식에서 사용하던 @SendTo는 같은 주제(topic)를 구.. 2023. 9. 5.
[Spring] 웹소켓(Websocket) 개념과 예제 [Spring] 웹소켓(Websocket) 개념과 예제 웹소켓(Websocket) 이란 이미지 출처: https://www.vaadata.com/blog/websockets-security-attacks-risks/ 웹소켓(WebSockets)은 양방향 통신을 지원하는 네트워크 프로토콜로, 클라이언트와 서버 간의 실시간 데이터 전송을 위해 사용됩니다. 기존의 HTTP 프로토콜은 클라이언트가 서버에 요청을 보내고 서버가 응답을 반환하는 단방향 통신을 지원하였지만, 웹소켓은 이와 달리 양방향 통신을 가능하게 해줍니다. 웹소켓은 주로 웹 애플리케이션에서 실시간 통신을 구현하는 데 사용되며, 대부분의 최신 브라우저와 서버 측 언어에서 지원됩니다.JavaScript를 사용하여 클라이언트 측에서 웹소켓을 다루는 것.. 2023. 8. 11.
베트남 다낭/호이안 4박5일 여행일기 2부(완) 베트남 다낭/호이안 4박5일 여행 - 2부 지난번 1부에 이어서 2부를 이어서 작성해보겠습니다. 1부는 아래 링크에서 확인할수있습니다. 베트남 다낭/호이안 4박5일 여행일기 1부 베트남 다낭/호이안 4박5일 여행 - 1부 여자친구랑 여행은 제주도, 강릉, 경주, 전주, 여수, 제천 등등 국내 이곳저곳 많이 돌아다녔는데 해외여행은 이번에 처음으로 같이 다녀왔습니다. 저는 생 ksr930.tistory.com 6월 9일 3일차 (한시장, 콩스파, 헬리오 야시장) 이날도 역시 오션뷰와 조식으로 아침을 시작합니다. 맨날 여기서 살고 싶을 정도입니다. 이날 일정은 멀리 안나가고 다낭 시내에서만 돌아다니기 때문에 시간적 여유가 있어서 외출하기전에 가볍게 수영을 하고 왔습니다. 날씨는 좋은걸 넘어서 햇빛이 따가울정도.. 2023. 7. 15.
[Helm] kube-prometheus-stack 모니터링 시스템 구축하기 (Grafana, exporter, monitoring) [Helm] kube-prometheus-stack 모니터링 시스템 구축하기 쿠버네티스 기반의 클러스터 환경에서 가장 많이 사용되는 모니터링 오픈소스인 Prometheus는 파드, 컨테이너, 노드의 여러가지 메트릭 데이터들을 기반으로 시계열 데이터를 생성하여 Grafana 같은 Web UI를 이용해 볼수 있도록 해줍니다. Prometheus를 설치하는 방법은 여러가지가 있지만 kube-prometheus-stack 에서 제공하는 Helm 방식의 설치방법이 가장 효율적이라고 생각해서 설치방법과 여러가지 유용한 설정 정보에 대해 알려드리려 합니다. kube-prometheus-stack 설치하는 이유 Prometheus를 도커로 실행해되고 되고 바이너리 파일로 노드 상에 직접 실행해도 되지만 kube-pro.. 2023. 7. 3.
베트남 다낭/호이안 4박5일 여행일기 1부 베트남 다낭/호이안 4박5일 여행 - 1부 여자친구랑 여행은 제주도, 강릉, 경주, 전주, 여수, 제천 등등 국내 이곳저곳 많이 돌아다녔는데 해외여행은 이번에 처음으로 같이 다녀왔습니다. 저는 생애 첫 해외여행이라 기대를 많이하고 다녀왔는데 생각보다 아주 만족했었고 준비도 많이 해서 다녀온만큼 후기를 작성하면서 베트남 다낭/호이안 여행시 도움이 될만한 정보도 같이 작성 해보겠습니다. 여행 전 준비 1. 항공권 예매 이번 여행은 올해 초부터 계획 했었는데 2월에 티웨이 항공 특가 이벤트로 예매를 했었습니다. 예매하고 4달이나 기다린후에 여행을 간거라 정말 많이 기다린 느낌이 났었습니다. 특가 이벤트로 성인 2명 인천, 다낭 왕복에 여행자보험까지 포함해서 70만원 정도 나왔는데 지금 일반 예매가격과 비교해보.. 2023. 7. 2.
쿠버네티스 Prometheus, Thanos 연동하기 k8s 멀티 클러스터 Prometheus, Thanos 연동하기 팀에서 클라우드 프로젝트를 수행하면서 모니터링 부분을 맡게되어 Promtheus를 포함한 Grafana, Loki, Jaeger등등 여러가지 모니터링에 필요한 오픈소스 프로그램들을 활용하는 중입니다. 그중 Prometheus는 여러 종류의 메트릭 데이터(Resource, Redis, Kafka...)들을 수집하는 역할을 하고 주로 Grafana와 연동하여 메트릭 모니터링 대시보드를 구성하는데 쓰입니다. [프로메테우스 간단 개념] [Prometheus] 프로메테우스의 기본 개념, 시계열 메트릭 정보수집 #metric #time serise Prometheus 프로메테우스는 2012년에 Sound Cloud 에서 만든 오픈소스 시스템모니터링 툴.. 2023. 6. 27.
[Kubernetes] CronJob 예제, Completed, Failed 파드 관리하기 [Kubernetes] CronJob 예제, Completed, Failed 파드 관리하기 쿠버네티스에서 CronJob은 주기적으로 실행되는 작업을 정의한 리소스입니다. 리눅스에서 crontab을 생성하듯이 5자리의 Cron 표현식으로 주기를 설정할수 있습니다. CronJob 생성 apiVersion: batch/v1beta1 kind: CronJob metadata: name: my-cronjob spec: schedule: "0 1 * * *" jobTemplate: spec: template: spec: containers: - name: my-job image: my-image command: ["my-command"] 위의 예제에서 Cron 표현식으로 "0 1 * * *"을 사용했는데 왼쪽부터 .. 2023. 6. 14.