기술 이모저모/[Ops] Devops

ArgoCD와 Github 연동 및 Webhook까지 설정했다면 이제 남은것을 배포를 위한 Application을 설정하는 것만 남았다!! [ArgoCD] Github 연동 및 Webhook Event 설정 방법 앞선 게시물을 통해 ArgoCD를 설치하였다. 그러면 이제 어떻게 Github Event를 받고 Application을 생성하는지에 대해 알아보자! [ArgoCD] CD Tool 도입개요 및 설치방법 현재 재직중인 회사에서는 Github Action dobby-isfree.tistory.com 배포를 하기 위해서는 먼저 배포할 Cluster를 설정해야 한다. 그리고 이 경우에는 각 환경별로 ArgoCD를 구성하는 방법이 있고, 1대의 ArgoCD에서 모두 관리하는 Multi-Cluster 방법이..
앞선 게시물을 통해 ArgoCD를 설치하였다. 그러면 이제 어떻게 Github Event를 받고 Application을 생성하는지에 대해 알아보자! [ArgoCD] CD Tool 도입개요 및 설치방법 현재 재직중인 회사에서는 Github Action으로 모든 CI/CD 작업을 진행하고 있다. 즉, Master/Dev/QA branch로 Merge가 되면 코드를 합치고, 이를 기반으로 Helm upgrade Job이 실행된다. 그렇기에 Helm Rollback도 Cli로 dobby-isfree.tistory.com ArgoCD 동작 방식 Github Sync 방법 기본적으로 ArgoCD는 Github SSH 키를 등록해서 주기적으로 Polling하고 Code를 가지고 온다. 그래서 가장 먼저 Github ..
현재 재직중인 회사에서는 Github Action으로 모든 CI/CD 작업을 진행하고 있다. 즉, Master/Dev/QA branch로 Merge가 되면 코드를 합치고, 이를 기반으로 Helm upgrade Job이 실행된다. 그렇기에 Helm Rollback도 Cli로 수동으로 진행해야 하고, 배포 전략도 단순한 Rolling update밖에 못하는것 같고 특히 Cluster 백업 체계를 수립하기 어렵다는 결론을 내렸고 CD Tool을 도입하기로 했다!! 구분 문제점 배포 수단 Github Action으로 배포하는것이 가장 좋은 배포 수단일까? 의문이다. Git Chart/Values의 내용과 실제 배포된 내용이 다른 경우가 종종 발생한다. 수동 작업에 대한 이력과 Helm 차이 현황을 알 수 없다...
앞선 게시물에서 Vault를 사용하기 위해 Role + Policy + Secrets을 생성하였다. 이제는 서비스에서 어떻게 Vault Secrets을 사용할 수 있는지 알아보도록 하자!! [Vault] Vault 서비스 사용 방법[1/2] 앞선 게시물로 Vault 배포 및 활성화 방법에 대해서 알아보았다. 설치하였으면 이제 사용해보아야하며, 본 게시물에서는 Vault 사용방법에 대해 알아보자! [Vault] Vault Helm 배포 및 활성화 방법 K8s를 dobby-isfree.tistory.com Vault Secrets 사용방법 Vault는 Sidecar 형태로 vault agent가 주입이 된다. 그렇기에 사용하는 Deployment에 특정 annotation 값을 설정해야 한다. Vault를 ..
앞선 게시물로 Vault 배포 및 활성화 방법에 대해서 알아보았다. 설치하였으면 이제 사용해보아야하며, 본 게시물에서는 Vault 사용방법에 대해 알아보자! [Vault] Vault Helm 배포 및 활성화 방법 K8s를 운영하다 보면 흔히들 비밀정보를 관리를 해야하는 경우가 생긴다. - 비밀정보 : DB 정보, ID/PW 등의 일반적으로 노출되면 안되는 정보들이다. 기본적으로 K8s에서는 Secrets Kind를 제공하고 있 dobby-isfree.tistory.com Vault 사용 방법 Vault를 배포하고 접속하게 되면 아래와 같이 접속 화면을 볼 수 있다. Method를 선택해보면 Okta등의 다양한 접속 방법이 있고, 필자는 Root Token으로 접속하므로 Token으로 접속을 한다. Vau..
K8s를 운영하다 보면 흔히들 비밀정보를 관리를 해야하는 경우가 생긴다. - 비밀정보 : DB 정보, ID/PW 등의 일반적으로 노출되면 안되는 정보들이다. 기본적으로 K8s에서는 Secrets Kind를 제공하고 있지만, 여러가지 사유에 의해서 재직중인 회사에서는 Vault를 사용하고 있고, Secrets과의 장/단점과 설치와 사용 방법에 대해 간략하게 리뷰하고자 한다! Vault vs K8s secrets 아래의 장/단점만 보면 크게 Vault를 사용해야되는 장점이 없어보일 수 있으나 가장 큰 장점은 UI가 있어서 사용이 간편하고, DDB 등으로 백업을 하고 있기 때문에 휴먼에러 등으로 비밀정보를 삭제하는 경우 복원이 쉽다. 다만, 반대로 가장 큰 단점은 Vault를 사용하기 위해서는 각 Pod에 S..
최근 회사에서 장애 상황이 있었다. 장애가 발생할 수 있지만 장애 처리가 미흡하여 장애 기준, 절차에 대해 재정의를 하려고 한다. 장애를 정의하기 앞서서 당사 서비스의 SLI, SLO 를 좀 살펴보았는데, 딱히 정의되어 있지 않은것 같다. 그래서 SLI, SLO가 무엇이고, 타사에서 많이들? 정의하는것을 기반으로 벤치마킹하고자 한다. - 아직 공부를 하는 단계이고, 최대한 이해하고 게시물을 작성하였지만, 일부 작성된 내용이 있을 수 있다. SLA 계약 또는 공표하기 위해서는 SLO가 사전 정의가 되어 있어야 하고, SLO를 정의하기 위해서는 SLI로 지표를 정의해야 한다. SLI(Service Level Indicator) 서비스 수준 척도라고도 불리며, 자세하게 말하면 서비스에 대한 수준을 측정하고 정..
Docs를 참고하고 최대한 경험한 내용을 토대로 기재하였으나, 혹시나.. 잘못된 내용이 있을 수 있습니다. 잘못된 내용은 코멘트로 알려주시면 확인 후 반영하도록 하겠습니다 :) 최근 EKS 노드 관리를 위해 CAS -> Karpenter로 Migration 하였다. CAS, Karpenter의 장/단점을 정리하는 게시물이다! CAS/Karpenter 2가지 플러그인만 비교한것으로 비교 구분 CAS Karpenter 비고 노드 생성 시간 느리다. - Warmpool 도입 전 약 4분 - Warmpool 도입 후 약 36초 빠르다. - 약 1분 Karpenter - NotReady 상태에서도 Pod 할당이 가능하기 때문에 Pod 할당시간이 더 빠르다. 비용 효율화 미흡함 비용 효율 CAS - 미리 지정한 N..
많은 기사에서도 접할 수 있듯이 올해 스타트업의 시장이 좋지 않다. 그래서 현재 재직중인 회사에서도 불필요한 또는 비효율적인 AWS 인프라 비용을 줄이라는 특명이 내려왔다. 그래서 AWS 인프라 비용에서 가장 많은 부분을 차지하는 EKS Node 비용을 먼저 줄여보기로 했다. 가장 좋은 방법은 각 Deployment의 Request/Limit 사이즈를 조절하는 것이다. 하지만 이것은 개발팀에서 조절하는 부분이고 데브옵스팀에서는 관여하기 어렵기에 그럼 노드를 효율적으로 사용할 수 있는 부분을 찾아보기로 했다. 그러던 중 팀원이 좋은? 괜찮은? 오픈소스인 Karpenter를 공유해주었고 당사에 적용한 내용을 기술해보고자 한다. 먼저 대부분의 EKS를 운영하는 회사에서는 Cluster Auto Scaler(이..
Kobby
'기술 이모저모/[Ops] Devops' 카테고리의 글 목록 (2 Page)