본문 바로가기

전체 글87

[K8S] 쿠버네티스로 Jenkins 설치하기 실행환경 MacOS - M1 Docker 1. jenkins 네임스페이스 생성 MacBookAir KbTest % kubectl create namespace jenkins 2. jenkins.yaml 파일 생성 apiVersion: apps/v1 kind: Deployment metadata: name: jenkins spec: replicas: 1 selector: matchLabels: app: jenkins template: metadata: labels: app: jenkins spec: containers: - name: jenkins image: jenkins/jenkins:lts ports: - name: http-port containerPort: 8080 - name: jnlp-port.. 2023. 12. 18.
[K8S] 쿠버네티스로 Spring Boot 프로젝트 배포해보기(1) 일단 개념 알아뒀고, 그냥 무작정 설치해봤다. 개발환경 MAC OS (M1 chip) VsCode Gradle 도커설치 ✅ Docker에서 쿠버네티스 설치 도커앱에서 오른쪽상단위 설정 창을 누르면 왼쪽에 쿠버네티스 메뉴를 볼 수 있다. 체크를 한 후 설치를 진행한다. 설치가 잘되었는지 확인해보려면 터미널에서 다음 명령어 입력 MacBookAir IdeaProjects % kubectl cluster-info MacBookAir IdeaProjects % kubectl get all Pop, Service 등의 정보를 알 수 있다. ✅ 쿠버네티스 대시보드 1) 대시보드 UI 배포 대시보드 UI는 기본으로 배포되지 않는다. 배포하려면 다음 커맨드를 실행한다. MacBookAir KbTest % kubectl.. 2023. 12. 18.
[K8S] 쿠버네티스 개념이해하기 도커와 쿠버네티스를 헷갈리는부분들이 종종있는데, 결론부터 말하자면 둘은 다르다. 도커는 컨테이너를 만들고 사용할 수 있도록 하는 컨테이너화 기술이다. 애플리케이션의 실행에 필요한 환경을 하나의 이미지로 모아두고, 그 이미지를 사용하여 다양한 환경에서 애플리케이션 실행 환경을 구축 및 운영하기 위한 오픈소스 가상화 플랫폼 이다. 한마디로 말해 도커는 그냥 우리가 흔히 쓰는 Mysql, Kafka 이런 애들을 이미지로 모아두고 이걸 구동시켜, 컨테이너로 실행하게 해주는 플랫폼임 쿠버네티스는 이렇게 실행된 컨테이너를 자동으로 배포, 확장 및 축소 관리가 가능하도록 만들어진 시스템이다. 클라우드 네이티브 애플리케이션을 제대로 설계하고 구축할 수 있도록 해주는 컨테이너 오케스트레이션 플랫폼이다. ✅ 클라우드 네이.. 2023. 12. 15.
[WebClient] Memory Leak WebClient 를 쓸경우 메모리 누수가 생기는 경우가 더러있다. 그게 언제냐! 하믄 첫째, 헤더누적 둘째, 예외가 생겼는데 예외처리를 하지 않을 경우 셋째, exchange() 넷째, WebClient 낮은버전 ✔ 헤더 누적 미리 webClient 를 생성해놓고 필요할 때마다 재사용을 할 때 this.webClient = WebClient.builder() .clientConnector(connector) .baseUrl("http://google.com") .header("test", "123") // 주의 !! .build() .post(); 사용하고자 하는 쪽에서 아래와 같이 header 메서드를 쓴다면 reqest header 가 계속 누적되어 append 되는 문제가 발생한다. 아래와 같이 .. 2023. 12. 15.