본문 바로가기

INFRA/DevOps146

Karpenter의 k8s 효율적인 자원관리 karpenter는 node를 정리 및 통합하는 디-프로비저닝(de-provisioning) 메커니즘이 있다.pod가 별로 없거나 놀고 있는 node를 정리하여 비용을 아낄 수 있겠다.1. Consolidation (통합)기능: consolidation은 클러스터 내에서 자원이 비효율적으로 사용되고 있을 때, 노드를 통합하여 자원을 최적화하는 기능작동 방식:Karpenter가 클러스터 내의 자원 사용률을 모니터링자원 사용률이 낮은 노드들에서 실행 중인 파드를 다른 노드로 이동할 수 있는지를 체크이동이 가능하다면, 자원이 덜 사용되고 있는 노드들을 통합하여 불필요한 노드를 종료❓ 어떤 노드를 통합할지는 Karpenter 내부 최적화 알고리즘에 의해 결정되는 것 같다.  spec: consolidation.. 2024. 9. 27.
Teams Workflow 생성하기 베하~!! 안녕하세요 1-Tier 팀 입니다.Teams Webhook 기능 Expire 에 따라 알림 수신 대체재로  Workflow를 사용해야 하는 상황이 발생했습니다.MS 측에서 기한을 늘려줬으나 실무에서 사용중이었던 모든 Teams Webhook을 수정해야 하는 번거로움이 발생했고 해당 업무를 수행하며 Workflow 생성 과정을 정리하면 좋을 것 같아 본 게시물을 작성하게 되었습니다. 대상 앱: Incoming Webhook ( OS365 connector)신규 앱 생성 중단일: 2024-08-15기존 앱 작동 중단일: 2024-10-01 => 2025.12 에 중단으로 변경되었으나 2024년 12월 31일 이후에도 사용하려면 URL 업데이트가 필요하며 만료 90일 전 Teams 측에서 지침 전송.. 2024. 8. 20.
Deployments 와 StatefulSets 베하~! 안녕하세요 1-Tier팀 입니다. Kubernetes 환경을 운영하면서 대부분 Deployment로 관리되고 운영되는데, MySQL, Jenkins 등 일부는 StatefulSet을 사용하는것에 궁금증이 생겼고 비슷한 역할을 하는 리소스이긴 하나 분명 다른점이 있을 것인데 명확하게 설명하기 어려워 두 개의 차이점을 알아보고자 찾아보면서 정리하기 위해 해당 포스팅을 작성하게 되었습니다. 차이점을 이해하기 전에, 먼저 상태 저장의 의미인 Stateful 과 Non-Stateful 를 이해해야 합니다. Stateful / Non-Stateful Stateful 상태를 지속적으로 유지하는 상태 DB, 캐싱 등 데이터를 영구적으로 저장하고 관리해야 하는 경우에 사용되며 각각의 인스턴스가 고유 식별자를 가.. 2024. 4. 17.
[Git] switch/restore 안녕하세요 BTC-1tier팀의 One입니다 오늘은 Git의 Switch와 restore 명령어에 대해서 알아보겠습니다. 여러분은 Git의 Checkout 명령어를 아시나요? 아마 Git을 자주 사용하시는 분이면 굉장히 익숙한 명령어일텐데요 문제는 이 Checkout이라는 하나의 명령어가 가진 기능이 너무 많습니다. checkout은 branch 생성 및 전환할 수 있는 기능과, 커밋 이후로 파일이 변경되었을 시, 최근 커밋 기준으로 파일을 되돌리는 기능을 가지고있는데요 이 명령어를 대체하기 위해 Git 2.23부터 switch와 restore가 도입되었다고 합니다. 세가지 명령어의 기능을 간단히 정리하면 다음과 같습니다. 명령어 실행 checkout Switch branches or restore wo.. 2024. 2. 28.
[K8S] Rollout 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 Rollout 에 대해 알아보겠습니다! Rollout 롤아웃(rollout) 은 애플리케이션의 업데이트나 변경 사항을 안전하게 배포하는 프로세스를 말합니다. 새로운 버전의 애플리케이션을 배포하고 이전 버전과의 전환을 원활하게 관리하면서 롤백이나 각종 상태 모니터링을 지원합니다. 일반적으로 'kubectl rollout' 명령어를 사용하여 이러한 배포 프로세스를 관리할 수 있습니다. 이러한 방식은 무중단 배포와 서비스의 안정성을 높이는 데 도움이 됩니다. 실습을 통해 더 자세하게 알아보겠습니다. Rollout 실습 이번 실습도 KillerCoda 에서 따라해보아요. https://killercoda.com/ Killercoda Interactive .. 2024. 1. 8.
[DevOps] Log4j 보안취약점 및 해결 방법 베하~ 안녕하세요! 금쪽상담소의 오은영박사와 금쪽이입니다!! 올해도 금방 이렇게 다 지나가고 있네요 올 한해 어떤 한해였을까요? 한해동안 많은 일들이 있었겠지요? 수고 많으셨습니다. 올해 마지막주제는 Log4j 보안취약점 및 해결 방법입니다! Log4j에 대해서 모르시는 분들은 아래 글을 참고하시면 될것같습니다! ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ [DevOps] Log4j 란? 베하 안녕하세요! 금쪽상담소의 오은영석사와 금쪽이 입니다~ 추운겨울 잘 보내시고 계신가요? 감기 조심하시길 바라며 오늘의 주제인 Log4j에 대해 알아보도록 하겠습니다! Log4j 란? Log란 컴퓨터 btcd.tistory.com Log4j의 취약점 취약점은 역대 비디오게임 판매량 1위 온라인게임인 마인크래프트(Minecraft)에서.. 2023. 12. 29.
[DevOps] Log4j 란? 베하 안녕하세요! 금쪽상담소의 오은영석사와 금쪽이 입니다~ 추운겨울 잘 보내시고 계신가요? 감기 조심하시길 바라며 오늘의 주제인 Log4j에 대해 알아보도록 하겠습니다! Log4j 란? Log란 컴퓨터가 언제, 무슨 일을, 어떻게 했는지 남겨 놓은 기록으로 Log4j는 JAVA를 사용하여 Log를 남기는 도구입니다. Log4j는 자바 기반의 로깅 유틸리티로 Apache에서 만든 오픈소스 라이브러리입니다. 프로그램은 유지와 관리를 위해서 기록을 남기기 때문에 Log4j는 거의 전 세계 대부분의 JAVA 기반 서버와 응용 프로그램에서 사용하고 있습니다. Log4j는 옵션 설정을 통해서 선택적으로 로그를 남기거나 특정 파일에 로그를 생성하는 등 다양한 이점을 가지고 있습니다. log4j의 장점 속도에 최적화 .. 2023. 12. 29.
[K8S] ConfigMap 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 ConfigMap에 대해 알아보겠습니다! ConfigMap 컨피그맵(configmap)은 컨테이너에서 필요한 환경설정 내용을 컨테이너와 분리해서 제공해 주기 위한 기능입니다. 개발용과 운영용에서는 서로 다른 설정이 필요한 경우가 많습니다. 이렇게 다른 설정을 가지고 실행을 해야할때 사용하는 것이 컨피그맵입니다. 컨피그맵을 컨테이너와 분리해 둠으로써 하나의 동일한 컨테이너를 가지고 개발용, 스테이지용, 운영용으로 모두 사용하는 것이 가능해 집니다. 컨피그맵의 내용을 컨테이너의 환경변수로 주는 것뿐만 아니라 다른 방식으로 사용할수도 있습니다. 볼륨형식으로 컨테이너에 붙여서 파일로 컨테이너에 제공해 주는게 가능합니다. config-volume라는 볼륨을.. 2023. 12. 8.