개발 플랫폼(9)
-
EKS 기반 spring, vuejs 웹 어플리케이션 배포 및 CI/CD 구축하기 #5
ArgoCD를 통한 CD어플리케이션이 배포되어 있는 EKS에 ArgoCD를 설치하여 CD를 구축하려고 한다. 우선 Helm차트를 통해 ArgoCD를 설치해보자.1. Helm 설치Helm은 Kubernetes의 패키지 관리자입니다. Helm을 사용하면 ArgoCD를 간편하게 설치할 수 있습니다. Helm이 설치되지 않았다면 아래 명령어로 설치합니다.curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash2. ArgoCD 설치 (Helm 사용)Helm을 이용해 ArgoCD를 설치합니다. 먼저 ArgoCD Helm 차트를 추가하고 업데이트합니다.helm repo add argo https://argoproj.github.io..
2024.11.12 -
EKS 기반 spring, vuejs 웹 어플리케이션 배포 및 CI/CD 구축하기 #4
Jenkins를 통한 CIEKS안에 jenkins서버를 구축해서 CI작업을 하려고 하였으나 리소스 용량 문제로 따로 EC2 인스턴스를 통해 젠킨스 서버를 구축하게 되었다. 간단한 CI 파이프라인 FLOW개발자가 코드를 GitHub의 main 브랜치에 Push를 하면 웹훅을 통해 CI 파이프라인을 트리거코드 변경 사항을 감지하여 애플리케이션을 빌드Docker 이미지를 AWS ECR에 푸시ArgoCD 배포 파일을 업데이트하여 자동으로 GitHub에 푸시1. Jenkins를 위한 IAM 역할 생성jenkins-eks-ecr-role에 AmazonEC2ContainerRegistryFullAccess, AmazonEKSClusterPolicy 권한 정책 부여ECR에 이미지를 푸시, EKS클러스터에 접근하기 위한..
2024.11.12 -
EKS 기반 spring, vuejs 웹 어플리케이션 배포 및 CI/CD 구축하기 #3
ALB 및 Ingress 설정AWS Load Balancer Controller를 사용하여 ALB를 EKS의 Kubernetes Ingress 리소스와 연동하고, 외부 트래픽을 Spring Boot 백엔드와 Vue.js 프론트엔드 애플리케이션으로 라우팅Route 53과 AWS Certificate Manager를 사용하여 외부 도메인과 SSL 인증서를 설정해 HTTPS로 애플리케이션에 접근1. AWS Load Balancer Controller사용을 위한 역할 생성IAM서비스에서 loadbalancer-controller-role라는 역할을 생성역할에 loadbalancer-controller-policy 정책을 부여 loadbalancer-controller-policy정책은 json으로 권한을 부여하..
2024.11.12 -
EKS 기반 spring, vuejs 웹 어플리케이션 배포 및 CI/CD 구축하기 #2
이전 글에서 EKS의 환경 세팅을 끝냈고 이젠 EKS로 로컬환경의 쿠버네티스에서 운영중인 어플리케이션을 배포 해보자.시스템 아키텍처 우선 배포하려는 어플리 케이션의 시스템 아키텍처이다 시스템 아키텍처 구성리전: ap-northeast-2 (서울)네트워크 구성: eks-vpc라는 VPC 내에 두 개의 private 서브넷과 두 개의 public 서브넷을 설정해, EKS가 외부와 내부 트래픽을 모두 처리할 수 있도록 환경을 구성.ALB: Spring Boot 백엔드 애플리케이션과 Vue.js 프론트엔드 애플리케이션을 배포하고, 외부 도메인은 Route 53을 통해 설정. SSL 인증서는 AWS Certificate Manager를 사용하여 HTTPS로 접근하도록 설정.1. RDS 생성로컬에서 생성한 데이터베..
2024.11.12 -
EKS 기반 spring, vuejs 웹 어플리케이션 배포 및 CI/CD 구축하기 #1
1. IAM 사용자 생성AWS의 서비스 중 IAM을 활용하여 어플리케이션을 배포하려는 사용자를 생성.우측 상단 사용자 생성을 통해 정보 입력 후 사용자 생성AdministratorAccess 권한 정책을 부여 2. VPC 생성eks에서 사용할 VPC 생성2. EKS 클러스터 생성EKS 서비스를 검색 후 해당 서비스를 사용클러스터 추가 -> 생성을 통해 클러스터 생성정보 입력 후 클러스터 IAM 역할을 생성 후 등록한다eks-cluster-role에 AmazonEKSClusterPolicy, AmazonEKSVPCResourceController 이 두 권한 정책을 부여 3. EKS 클러스터안의 노드 그룹 추가클러스터가 생성 된 후 컴퓨팅 -> 노드 그룹 추가를 통해 노드그룹을 추가노드 그룹에 대한 정보..
2024.11.11 -
[AWS] IAM 사용자 생성
AWS를 이용하기 위한 사용자 로그인은 ROOT 사용자, IAM 사용자로 2가지가 있다. ROOT사용자는 AWS안에서 모든 권한을 가지고 있는 사용자로 실사용을 할때엔 추천하지 않는다. 반면 IAM(Identity and Access Management) 사용자는 권한을 부여받아 용도에 맞게 사용할 수 있어 대부분 실제 서비스를 이용하기 위해 사용된다. 1. 서비스 -> IAM 2. 그룹 생성 왼쪽 사이드바 -> 사용자 그룹 -> 그룹 생성 그룹 이름 지정 그룹 권한 연결 3. 사용자 생성 왼쪽 사이드바 -> 사용자 그룹 -> 사용자 생성 사용자 이름, 암호 설정 사용자 그룹 지정 사용자 정보와 그룹을 지정하고 생성을하면 IAM 사용자로 로그인할 수 있게 된다. IAM 사용자로 콘솔에 로그인 하면 권한이..
2024.04.02