devnoong.log
article thumbnail
[MiniKube 실습] Cloud9 ECR 업로드 및 yaml 파일 배포
Cloud/AWS 2022. 11. 10. 13:15

https://devnoong.tistory.com/40 [MiniKube 실습] 쿠버네티스 어플리케이션 배포 minikube 를 사용해 쿠버네티스 어플리케이션을 배포하는 작업을 진행해보겠습니다. 우선 배포를 진행하기 전 간략하게 쿠버네티스에 대해 정리하는 시간을 가져보도록 하겠습니다. 쿠버네티스 devnoong.tistory.com 이전 포스팅에서는 쿠버네티스가 제공해주는 echoserver 를 Node로 활용해 배포를 진행했다면 요번 포스팅에서는 AWS ECR과 yaml파일을 이용해 배포를 진행해보도록 하겠습니다 1. Cloud9 ECR 로그인 (새 유저 권한으로 진행) ECR에 업로드 된 이미지를 Minikube에서 사용하기 위해서는 ECR 로그인이 필요합니다 초반에 AWS Configure를 통해..

article thumbnail
[MiniKube 실습] 쿠버네티스 어플리케이션 배포
Cloud/AWS 2022. 11. 9. 12:28

minikube 를 사용해 쿠버네티스 어플리케이션을 배포하는 작업을 진행해보겠습니다. 우선 배포를 진행하기 전 간략하게 쿠버네티스에 대해 정리하는 시간을 가져보도록 하겠습니다. 쿠버네티스 클러스터는 아래와 같이 구성되어 있습니다. Deployment 안에 Master 가 포함 되어있는 구조로, Master는 Deployment에 포함된 어플리케이션 인스턴스가 클러스터의 개별 노드에서 실행되도록 스케줄을 합니다. 즉 Deployment는 쿠버네티스에게 어플리케이션 인스턴스에 대한 생성 및 업데이트를 지시하는 역할을 수행한다고 볼 수 있습니다. 배포를 담당하는 리소스입니다 쿠버네티스에서 deployment가 제일 중요하다고 볼 수 있겠죠? 1. 어플리케이션 배포 (새 유저 권한으로 진행) 쿠버네티스 공식 사..

article thumbnail
[MiniKube 실습] kubectl 설치 및 minikube 확인하기
Cloud/AWS 2022. 11. 9. 08:49

kubectl이란? 쿠버네티스 클러스터에 명령을 내리는 CLI로 오브젝트 생성 수정 혹은 삭제와 관련한 동작을 수행 할 수 있도록 쿠버네티스 API 호출해 관련 동작을 수행 하는 역할을 합니다. 1. Kubectl 설치하기 (기본권한 = root 권한으로 진행) 아래의 명령어를 이용해 kubectl 설치를 진행해주세요 sudo snap install kubectl --classic 2. Node 조회 및 minikube 확인 (새 유저 권한으로 진행) 일반 유저(newuser) 로 로그인 후 kubectl 명령어를 통해 minikube 를 조회해보도록 하겠습니다. sudo su newuser kubectl get nodes ㅎ... 실행 했는데 아래의 오류가 갑자기 발생하더라고요...;; 이전에 몇개의 ..

article thumbnail
[MiniKube 실습] Minikube 설치 및 실행하기
Cloud/AWS 2022. 11. 8. 17:07

드디어 드디어..... MiniKube 설치 전에 필요한 작업들이 종료 되었고 Ubuntu에 Minikube를 설치해보도록 하겠습니다. 1. 도커 설치하기 (기본권한 = root 권한으로 진행) aws에서 제공해주는 cloud9은 기본적으로 docker가 설치되어있으므로 생략 가능한 과정입니다. 설치가 안되어있다면 아래 명령어를 통해 설치를 진행해주세요~ sudo apt install docker.io -y 2. 도커 권한 수정 하기 (기본권한 = root 권한으로 진행) 아래 명령어를 통해 docker 권한 수정 작업을 진행 합니다. 생성한 user명이 newuser가 아니라면 해당 부분을 user명으로 수정해주세요. sudo usermod -aG docker newuser && newgrp docke..

article thumbnail
[MiniKube 실습] Minikube 수행을 위한 새로운 사용자 생성하기
Cloud/AWS 2022. 11. 8. 16:01

이제 본격적으로 MiniKbue 에 대해 진행해보도록 하겠습니다. 간혹 기본 인스턴스 권한으로 실행시 Minikube 수행이 안되는 버그가 발생하기 때문에 이를 방지하고자 Minikube를 수행 할때 사용 할 새로운 유저를 생성해보도록 하겠습니다. MiniKube 설치를 진행 할때는 기본 권한인 root로 진행하고, 수행 할 때는 새로운 유저를 이용해 수행해보도록 하겠습니다~! 아래의 명령어를 이용하여 새로운 유저를 생성합니다. sudo adduser newuser 만약 'newuser is not in the sudoers file. This incident will be reported.' 의 오류가 발생 한다면 아래 명령어를 실행해주세요. sudo usermod -aG sudo newuser 아래의..

article thumbnail
[MiniKube 실습] ECR 이미지 사용을 위한 IAM Role 생성
Cloud/AWS 2022. 11. 8. 09:21

ECR 이미지 사용을 위해 IAM Role 생성하는 작업을 선 진행하도록 하겠습니다. 먼저 ECR에 대해서 알아보도록 하겠습니다. ECR이란? Elastic Container Registry의 약자로, Docker 컨테이너 이미지를 손쉽게 저장, 관리, 및 배포할 수 있게 해주는 완전 관리형 Docker 컨테이너 레지스트리 서비스라고 생각하시면 됩니다. ECR을 이용하게 되면 사용자 또는 Amazon EC2 인스턴스가 컨테이너 리포지토리 및 이미지에 액세스 할 수 있습니다. 아래의 과정과 같이 ECR을 이용해 이미지에 액세스하기 위해서는 권한 설정이 부여되어야 합니다. 이러한 권한을 설정해서 부여해주는 것이 IAM(Identity and Access Management) 입니다. 1. IAM 역할 생성 ..

article thumbnail
[MiniKube실습] Cloud9 구성
Cloud/AWS 2022. 11. 7. 21:18

AWS 진행을 위해 필요한 인프라도 구축 했으니 cloud9 인스턴스를 생성해보도록 하겠습니다. https://devnoong.tistory.com/34 [MiniKube 실습] AWS 인프라 구성하기 MiniKbue를 이용해서 aws 환경에 좀 더 친숙해져보는 시간을 가져보려고 합니다 :) MiniKube란? 단순한 개발 테스트를 위해 개인이 쿠버네티스 환경을 구축 할 수 있도록 도와주는 플랫폼이라고 할 수 devnoong.tistory.com 1. Cloud9 구성 AWS 콘솔 홈의 상단바에서 cloud9을 검색하여 새로운 환경 및 인스턴스를 만들도록 하겠습니다. 간단한 팁이지만 저 별표 모양을 선택하면 즐겨찾기 표시로 등록이 되어 AWS 콘솔 상단 바에 추가 되어 나중에 쉽게 접속 할 수 있기에 등..

article thumbnail
[MiniKube 실습] AWS 인프라 구성하기
Cloud/AWS 2022. 11. 7. 20:46

MiniKbue를 이용해서 aws 환경에 좀 더 친숙해져보는 시간을 가져보려고 합니다 :) MiniKube란? 단순한 개발 테스트를 위해 개인이 쿠버네티스 환경을 구축 할 수 있도록 도와주는 플랫폼이라고 할 수 있습니다. 쿠버네티스는 마스터노드(Master Node)와 여러개의 워커노드(Worker Node)로 구성되어 있습니다. 이러한 기능들 중 필요한 일부 기능만 제공함으로써 마스터 노드의 일부 기능과 하나의 단일 워커로 구성되어있는 플랫폼이라고 생각하시면 됩니다 또한 일정시간 이상 사용하지 않을 경우 MiniKube가 감지해 인스턴스를 종료시켜주니 비용 절감 측면에서 큰 장점을 보이고 있습니다. 필요한 기능과 비용 절감의 장점을 가지고 있기때문에 개인이 개발 테스트를 위해 많이 사용하는 추세인것 같..

article thumbnail
[EKS 웹 애플리케이션 구축] CI/CD for EKS cluster
Cloud/AWS 2022. 8. 21. 23:45

CI/CD for EKS cluster란? Github 에 위치한 application 소스와 k8s manifests 의 변경 사항이 발생될 때 마다 자동으로 Github Action 을 통해서 빌드/통합(Continous Integration) 하고, 통합된 배포 대상을 ArgoCD 를 통해 k8s 클러스터에 배포(Continous Deployment) 하는 일종의 gitops 파이프라인을 만드는 과정을 안내 합니다. 이 때 k8s manifests를 통합/패키징 하는 도구로 Kustomize를 사용 합니다. manifest 정적 분석을 위해 Checkov와 Trivy 를 함께 사용 합니다. 이를 통해 클러스터의 보안을 향상 할 수 있습니다. CI/CD 파이프라인의 동작 흐름은 다음과 같습니다. CI..

article thumbnail
[EKS 웹 애플리케이션 구축] Cluster Autoscaler 적용하기
Cloud/AWS 2022. 8. 19. 17:30

Cluster Autoscaler란? 이전 글에서 파드에 오토 스케일링을 적용해봤습니다. https://devnoong.tistory.com/28 [EKS 웹 애플리케이션 구축] HPA 적용하기 쿠버네티스 오토 스케일링이란? 오토 스케일링 서비스는 사용자가 정의한 주기 및 이벤트에 따라 서버를 자동으로 생성하거나 삭제하는 기능을 의미합니다. 오토 스케일링을 사용함으로써 애 devnoong.tistory.com 하지만 트래픽에 따라 파드가 올라가는 워커 노드 자원이 모자라게 되는 경우도 발생하게 됩니다. 즉, 워커 노드가 가득 차서 파드가 스케줄될 수 없는 상태가 되기때문에 Cluster Autoscaler(CA) 사용합니다. 1. ASG(Auto Scaling Group) 값 확인 현재 클러스터의 워커노..