반응형

2024/12 7

Consul 삭제 후에도 webhook 에러 발생

k8s 클러스터에서 Consul 을 설치하고 삭제를 했는 데도, 아래와 같은 에러가 발생해서 무엇이 문제 인가 확인 해본 결과 Error creating: Internal error occurred: failed calling webhook "consul-consul-connect-injector.consul.hashicorp.com": failed to call webhook: Post "https://consul-consul-connect-injector.consul.svc:443/mutate?timeout=10s": service "consul-consul-connect-injector" not found 아래 이미지에서와 같이 Webhook이 삭제가 제대로 되질 않아서 발생하는 문제였습니다. 따라..

쿠버네티스 2024.12.31

Blue - Green 배포 실습 해보기

이번에 해볼 것은 Blue - Green 배포를 직접 해보겠습니다. 사전 준비 사항Github Action 사용법k8s 클러스터 환경Helm 설치 목표Nginx 이미지를 사용해서 Blue - Green 배포 동작 방식을 확인 해보도록 하겠습니다. 이제 실습을 해보도록 하겠습니다.1. ArgoCD, ArgoCD-rollout 설치Helm 차트를 통해 설치를 진행 해보도록 하겠습니다.helm repo add argo https://argoproj.github.io/argo-helmhelm install argocd argo/argo-cd --version 7.7.10helm install argo-rollout argo/argo-rollouts2. Nginx 이미지 커스텀제가 원하는 index 내용을 보여주..

Pipeline 2024.12.20

Github Action 원하는 환경에서 Workflow 작업 해보기

이번에 해볼 것은 원하는 환경에서 Workflow 를 실행 해보도록 하겠습니다. ex) 노트북, 가상 머신 등Self-hosted runner 설정 1. Github 레포지터리 접속 2. Settings -> Actions -> Runners -> New-self-hosted runner 3. 실행 환경의 OS 선택(저는 노트북의 OS가 Window여서 Window로 선택을 하였습니다.)  Download 방법에 나온 명령어를 입력하여 다운로드 해주면 됩니다. 마지막으로 Configure 에 나온 방법 대로 명령어를 실행 해주면 self-hosted 환경 설정이 완료됩니다. 4. YAML 파일에서 실행환경을 self-hosted로 지정 ex)name: Example Workflow on: push:..

Pipeline 2024.12.19

Github Action 이란 ?

Github Action 이란 ?Github에서 제공하는 CI/CD(Continuous Integration/Continuous Deployment) 플랫폼 입니다.Github Action을 사용하여 빌드, 테스트 및 배포 파이프라인을 자동화 할 수있습니다. 바로 실습을 통해 좀 더 자세히 알아보겠습니다.먼저 Github Action의 Workflow를 실행하기 위해서 .github/workflow 라는 디렉터리가 필요합니다. 해당 디렉터리 안에 Workflow를 돌리기 위한 YAML 파일을 정의합니다. 따라서 repository를 생성하고 해당 repository에서 디렉터리를 생성 해줍니다. 폴더 tree는 아래와 같습니다..githubㄴ workflows ㄴ workflow를 정의할 YAML 파..

Pipeline 2024.12.19

(Ubuntu) sudo 명령어 패스워드 입력 없이 사용하기

이번에는 Ubuntu 서버에서 sudo 명령어를 사용할 때, 패스워드를 입력하지 않고 사용할 수 있도록 설정 해보도록 하겠습니다.  아래의 명령어를 입력해줍니다.$ sudo visudo 그러면 nano 편집기로 열릴 텐데, 맨 아래로 내려가서 내용을 추가해줍니다. ALL=NOPASSWD: ALL 이렇게 추가해주고 난 후, Ctrl+o -> Enter -> Ctrl+x 위 순서대로 키를 입력하여 nano 편집기를 나와줍니다. 이제 sudo 명령어를 입력하여도 패스워드를 요구하지 않게됩니다. 감사합니다.

Linux 2024.12.11

내 노트북(Window) <-> 가상 머신(Ubuntu) 서버와 SSH 패스워드 없이 연결

이번에 해볼 것은, 제 노트북과 가상머신의 서버와 SSH 연결을 패스워드 없이 해보도록 하겠습니다. 내 노트북(Window) 우선 명령프롬프트를 켜줍니다. 이제 "ssh-keygen" 명령어를 입력해줍니다. 그러면 아래 이미지와 같이 나오는데 그냥 Enter 를 계속 입력해주면 됩니다.  그러면 id_ed*.pub 키가 생기는데, 해당 Key의 내용을 가상머신 서버에 입력해줍니다. 가상머신(Ubuntu)가상머신에 접속을 해서 "사용자 밑에/.ssh" 폴더를 생성해줍니다. 이게 무슨 뜻이냐면, 노트북에서 -> 가상머신에 SSH 접속을 할 때, root 유저로 접속을 할 것이면, "/root/.ssh"  test라는 유저로 SSH 접속을 하고 싶으면 "/home/test/.ssh"  저 같은 경우에는 roo..

Linux 2024.12.09

쿠버네티스 Deployment 란 ?

Deployment 란? 애플리케이션을 선언적 방식으로 관리하고,업데이트와 확장을 효율적으로 수행할 수 있게 도와주는 리소스입니다.Deployment는 애플리케이션의 Pod와 해당 Pod를 관리하는 ReplicaSet을 생성하고 관리합니다.이를 통해 사용자는 안정적으로 애플리케이션을 배포하고 관리할 수 있습니다. 즉, Deployment는 POD의 배포와 상태를 더 쉽고 안정적으로관리 하는 리소스라고 볼 수 있습니다.Deployment의 구조아래 그림과 같이 Deployment에서 POD는 ReplicaSet이 관리를 합니다. ReplicaSet은 업그레이드된 ReplicationController 라고 생각하시면 됩니다. 예시로 Deployment를 생성하기 위해 작성한 Yaml 파일로 구조를 알아보면..

반응형