본문 바로가기
728x90
반응형

DevOps73

[DevOps]DevOps 환경에서 CI/CD 프로비저닝 구성하기: 이미지 기반 파이프라인과 인프라 자동화 최근 DevOps의 CI/CD 파이프라인과 프로비저닝에 대한 개념이 조금씩 이해가 가면서, 저만의 DevOps 아키텍처를 설계하게 되었습니다. 이 과정에서 GitLab, Jenkins, Helm, Terraform 등 다양한 도구를 활용하여 환경을 구성하고 모니터링을 설정했습니다. 오늘은 제가 이해한 내용을 바탕으로 DevOps 엔지니어의 관점에서 인프라를 구성하는 방법과 각 도구의 역할에 대해 공유해보겠습니다.  현재까지 가 이해한 대로 구성도를 짜보았습니다. Dev 파트 (CI): GitLab, Jenkins, Github Actions를 활용한 CI 파이프라인DevOps 환경에서 CI 파이프라인의 중심에는 GitLab과 Jenkins가 자리 잡고 있습니다. GitLab을 통해 코드 변경 사항을 관리.. 2024. 11. 15.
[DevOps]인프라 자동화의 핵심 도구들: Terraform, cloud-init, Helm, Ansible, Vagrant 자동화와 인프라 관리는 이제 IT 환경에서 필수적인 요소로 자리 잡았습니다. 인프라를 코드로 관리하는 IaC(Infrastructure as Code) 도구들이 발전하면서, 개발과 운영 환경에서 시간과 비용을 절감하고 일관성을 높일 수 있는 다양한 방법이 생겼습니다. 이번 포스팅에서는 Terraform, cloud-init, Helm, Ansible, Vagrant와 같은 대표적인 자동화 도구들을 살펴보고, 이들을 가상머신, 컨테이너, Kubernetes 환경에 적용하는 방법을 소개하겠습니다. Terraform: 인프라를 코드로 선언하기Terraform은 클라우드 리소스를 코드로 선언하고 프로비저닝하는 도구입니다. AWS, GCP, Azure 같은 주요 클라우드 서비스 제공자뿐 아니라, vSphere, .. 2024. 11. 9.
[Devops] Terraform + Cloud-init & Ansible 현대의 IT 인프라 환경에서, 시스템 관리자와 DevOps 엔지니어들은 인프라를 효율적으로 관리하기 위해 다양한 자동화 도구를 사용합니다. 이 글에서는 Terraform + Cloud-init 조합과 Ansible을 비교하여 각 도구의 역할과 사용 목적을 살펴보겠습니다. 특히 위의 이미지에서 각 도구의 주요 사용 영역을 시각적으로 표현하고 있으니 참고하시기 바랍니다. 1. Terraform과 Cloud-init의 조합: 인프라 프로비저닝 및 초기 설정Terraform의 역할: 인프라 생성 및 관리Terraform은 Infrastructure as Code (IaC)를 지원하여 AWS, Azure, GCP와 같은 클라우드 환경에서 인프라 리소스를 선언적 코드로 정의하고 관리합니다. 이를 통해 EC2 인스턴.. 2024. 11. 6.
[Devops]AWS ECR vs Docker Hub: 왜 AWS ECR을 선택해야 할까? 개요클라우드 기반 애플리케이션 개발에서 컨테이너 이미지를 저장하고 관리하는 일은 필수적인 과정입니다. 많은 개발자들이 Docker Hub를 이미지 저장소로 사용하지만, AWS 클라우드 환경에서 운영되는 애플리케이션에는 AWS ECR (Elastic Container Registry)을 사용하는 것이 훨씬 더 효율적일 수 있습니다. 이 글에서는 AWS ECR이 Docker Hub에 비해 어떤 장점을 제공하는지, 그리고 실제 운영 환경에서 ECR을 사용하는 이유에 대해 알아보겠습니다. 1. AWS ECR 이란?AWS ECR은 AWS에서 제공하는 Docker 이미지 저장소 서비스입니다. Docker Hub처럼 컨테이너 이미지를 저장하고 버전 관리할 수 있지만, AWS 환경에 최적화되어 있어 클라우드 기반 애플.. 2024. 11. 5.
[Rocky linux8] Vagrant 구성하기 개요Vagrant는 개발 환경을 쉽게 생성하고 관리할 수 있도록 도와주는 오픈 소스 도구입니다. 이를 통해 동일한 개발 환경을 여러 개발자 간에 쉽게 공유할 수 있고, 운영체제, 소프트웨어 버전, 네트워크 설정 등을 손쉽게 가상 환경에서 설정할 수 있습니다. Vagrant는 주로 가상 머신(VM)이나 컨테이너를 관리하며, 개발자는 이를 통해 호스트 운영체제와 독립적인 환경에서 애플리케이션을 개발 및 테스트할 수 있습니다.주요 기능Vagrant의 주요 기능은 다음과 같습니다:간편한 가상 환경 설정: Vagrantfile이라는 설정 파일을 통해 필요한 가상 머신의 스펙(운영체제, 네트워크, 디스크 등)을 정의합니다.다양한 프로바이더 지원: Vagrant는 VirtualBox, VMware, Docker와 같.. 2024. 10. 15.
[Docker] Podman 개요Podman은 컨테이너와 관련된 작업을 수행할 수 있는 컨테이너 엔진으로, Docker와 유사한 기능을 제공하지만 몇 가지 중요한 차이점이 있는 도구입니다. Podman은 주로 컨테이너를 생성, 관리, 배포할 수 있는 CLI(Command Line Interface)를 제공하며, 무거운 데몬 프로세스를 사용하지 않는 점에서 Docker와 구별됩니다.Podman의 특징1. 무데몬 (Daemonless) 구조Docker와 달리 Podman은 별도의 데몬 프로세스를 필요로 하지 않습니다.Docker는 모든 컨테이너와 이미지를 관리하기 위해 중앙의 dockerd 데몬을 사용하지만, Podman은 각각의 컨테이너가 독립적인 프로세스로 실행되므로 시스템 리소스가 더 효율적으로 사용됩니다.무데몬 구조 덕분에 데몬.. 2024. 10. 11.
728x90
반응형