테라폼(Terraform) 사용 가이드 2:MacOS에 테라폼 설치하기
·
DevOps/테라폼(Terraform)
이번 포스트에서는 MacOs에 테라폼을 설치해 보자 1. 테라폼 설치: URL 직접 다운로드 직접 다운로드하기 첫 번째 방법은 URL로 직접 다운로드하는 건데, 최신 버전이나 이전 버전 모두 다운로드할 수 있다. 예를 들어, curl 명령어 또는 다른로드 버튼을 통해 .zip 파일을 다운로드 받고, 압축을 풀어서 terraform 바이너리 파일을 /usr/local/bin에 옮기면 된다. Install | Terraform | HashiCorp Developer Explore Terraform product documentation, tutorials, and examples. developer.hashicorp.com 2. 테라폼 설치: Homebrew 이용 Homebrew 페이지 접속 맥 OS용 무료..
테라폼(Terraform) 사용 가이드 1: 테라폼이란?
·
DevOps/테라폼(Terraform)
이번 포스트에서는 테라폼이 무엇인지 알아보자 📌 서론 MSA 프로젝트를 설계하면서 AWS 내부에 많은 서버와 DB를 띄우고 나니 매달 나오는 비용이 상당했다. 그래서 우리 팀은 필요할 때만 EC2를 생성해서 ECS클러스터와 RDS를 가동하면 돈을 아낄 수 있을 것이라고 생각했고 여러 가지 tool을 알아보던 도중 terraform을 찾아냈고 이를 적용시켰다. 그 내용을 공유하기 전에 테라폼이 무엇인지에 대해 먼저 알아보자 1. 테라폼이란 무엇인가? 테라폼이란? 테라폼(Terraform)은 HashiCorp가 개발한 오픈 소스 'Infrastructure as Code' 도구로, 클라우드 및 온프레미스 리소스의 구축, 변경, 버전 관리를 코드로 효과적으로 관리할 수 있게 한다. 테라폼은 HCL(Hashi..
단일 장애 지점(SPOF)이란?
·
DevOps
단일 장애 지점에 대한 궁금증이 생겼다. 지금부터 알아보도록 하자! 📌 서론 세미나 영상을 보던도중 단일 장애 지점에 대한 언급이 있었는데 설명없이 넘어가다보니 흐름상 이해는 했지만 정확히 이게 어떤 상황인지 잘 몰라서 답답했던 기억이 있다. 그래서 직접 단일 장애 지점이 뭔지 조사해보고 정리해 봤다. 1. 단일 장애 지점(SPOF)이란? 단일 장애 지점(SPOF) 단일 장애 지점(SPOF)은 시스템이나 네트워크의 한 부분이 고장 났을 때 전체 시스템의 가동이 멈추는 상황을 말한다. 이런 지점은 시스템의 취약점으로 작용하고, 이를 해결하지 않으면 예기치 않은 상황에서 전체 시스템이 마비될 수 있다. 가장 흔한 예로는 중요한 데이터베이스 서버, 핵심 네트워크 스위치, 또는 주요 애플리케이션 서버가 하나만 ..
ECR Docker 이미지 Push 오류: M1 아키텍처와 exec format 문제
·
DevOps
M1에서는 ECR에 AWS의 푸시명령어를 입력하면 오류가 발생한다. 이 글을 작성하게 된 이유는 Local환경에서 이미지를 빌드해서 ECR로 넣은 다음 ECS에서 배포를 했는데 계속해서 오류가 발생했다. 이에 해결방법을 찾은 것을 기록한다. 제목에 대해 바로 확인하고 싶은 분들은 목차 1은 건너뛰면 된다. 1. 이미지 배포 오류 발생 1-1. AWS에서 ECS에 서비스 생성을 완료해서 배포를 했다. 1-2. ECS로 배포하던 도중 계속해서 배포가 실패했다. 2. AWS CloudWatch에서 에러로그 확인 2-1. 계속 배포도중 발생하는 오류가 뭔지 확인하기 위해 CloudWatch로 이동했다. 2-2. 오류로그 확인 아래와 같은 오류였다. exec /usr/bin/java: exec format err..
Pipeline 방식으로 Jenkins구축 - SpringBoot CI/CD 구축
·
DevOps
Pipeline 방식으로 젠킨스를 구축해 보자 이번 포스트에서는 설정과 사용 방법이 좀 더 복잡하지만 커스텀하기 좋고 세밀한 구성이 가능한 Pipeline 방식으로 Jenkins의 CI/CD를 모두 구현해보도록 한다. 이번에 적용시킬 CI/CD는 SpringBoot이다. 1. Jenkins CI(지속적 통합)를 위한 Script 추가 작성하기 1-1. 우선 Jenkins 대시보드 좌측 상단의 “새로운 Item” 버튼을 클릭해서 들어간다. 1-2. 아래와 같은 창이 나올것이고 여기서 Item의 이름을 적고 하단에서는 Pipiline을 선택한다. 1-3. Pipeline 작성하기 아이템을 생성하면 아래와 같이 생성한 파이프라인의 설정 페이지로 넘어갈 것이다. 위의 설정들은 skip하고 아래로 스크롤을 내려서..
Jenkins로 시작하는 CI: Freestyle 프로젝트 구축 가이드
·
DevOps
이번 포스트에서는 Jenkins에서 Freestyle방식을 사용해서 Item을 구축하는 방법에 대해서 설명한다. 요즘은 Pipeline을 많이 사용하지만 Freestyle도 나름 간단하게 적용시켜서 사용하기에는 나쁘지 않은 것 같다. 1. Jenkins의 Item에 대한 이해 1-1. Item이란? Jenkins에서 "Item" 또는 "Job"은 자동화 작업의 기본 단위다. 개발자가 젠킨스를 통해 CI/CD 프로젝트를 구축하려면 아이템(Item)을 생성하여야 한다. Item은 특정한 작업을 수행하기 위한 설정과 함께 저장되는 것으로, 예를 들어 소스 코드의 빌드, 테스트 실행, 배포 등을 수행할 수 있다. Jenkins는 다양한 종류의 Job을 제공하며, 가장 일반적으로 사용되는 것은 "Freestyle..
AWS EC2에서 Docker와 Jenkins로 CI/CD 환경 구축하기
·
DevOps
이번에는 EC2에서 Docker를 띄운 후 Jenkins를 구축해 보자 1. EC2 인스턴스에 SSH 접속 AWS 콘솔에서 EC2 인스턴스의 IP 주소를 확인한 후, 터미널을 열고 SSH로 접속한다. 아래의 방법을 통해 Termius로 접속할수도 있다. 2023.10.25 - [AWS] - AWS - EC2 생성과 Termius 접속방법 AWS - EC2 생성과 Termius 접속방법 코딩은 글쓰기라고 생각한다. 꾸준히 기록하며 내 개발 실력을 키울것이다. curiousjinan.tistory.com 2. 패키지 업데이트와 Docker 설치 2-1. 먼저 패키지 업데이트를 진행한다. sudo apt-get update 2-2. Docker 설치에 필요한 패키지 설치 sudo apt-get install ..