ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Cloud) IaC (Infrastructure as Code)
    Cloud/Cloud 2022. 9. 19. 19:47

    IaC [ Infrastructure as Code ] 란?

    • 인프라 구성을 프로그래밍 하는것처럼 처리한다해서 프로그래밍형 인프라라고 부른다.
    • 인프라 구성을 코드를 통해 자동으로 구축, 관리, 프로비저닝 한다.
    • 100개 정도 서버를 구성한다고 할 때, 수동설정의 경우 오랜 시간이 걸리고 구축도중 오류 발생 확률이 높다. 하지만 IaC 활용 설정으로 구성하면 하나의 코드롤 통해 모든 서버를 자동으로 구축할 수 있다.


    IaC의 장점?

    • 비용절감 (여러 서버를 하나로 관리할 수 있어, 여러 관리자를 필요로 하지 않는다.)
    • 배포속도향상 (코드기반으로 배포하기 때문에 배포속도가 빠르다.)
    • 오류감소 (여러 서버를 하나로 관리하여 오류가 감소한다.)
    • 인프라 일관성 향상 (멱등성)


    용어

    프로비저닝 [ provisioning ]

       - 클라우드 서비스를 시작하고 구성하는것

       - 인프라를 설정하는 프로세스 시스템, 데이터, 네트워크 작동을 준비하는 과정

     

    형상 관리 [ configuration management ]

       - 이력관리 (이전 버전을 관리하여 롤백 등 할 수 있다.)

       - 서버운영상 필요한 소프트웨어를 설치하고 설정으로 관리하는 것

       - 설정관리에 사용되는 여러 정보이력을 관리

       - IaC는 코드를 이용한 인프라 관리, 형상관리는 운영체제 상에서 패키지를 설치와 필요한 설정을 코드로 관리.

    IaC vs 형상관리

       - Git도 하나의 형상관리 툴이라 할수있다.

     

    배포 [ deploy ]

       - 프로비저닝된 서버를 실행시키기 위해 애플리케이션 버전을 제공하는 작업

     

    오케스트레이션 [ orchestration ]

       - 여러 시스템 또는 서비스를 조정하는것

       - 오케스트레이션의 목표는 배포, 관리, 확장, 네트워킹을 자동화하기 위함

       - 대표적으로 쿠버네티스가 오케스트레이션 툴이다.



    IaC Tools

     

    AWS CloudFormation

       - AWS에서 제공하는 IaC서비스 (AWS에 특화된 인프라 구성)

     

    Ansible

       - 별도의 Agent없이 IaC 서비스 제공

       - IaC는 여러 클라이언트 서버를 관리하기위해 Agent 서버가 있어야 하지만 Ansible은 SSH를 기반으로 하여 SSH 연결만 가능하면 IaC 서비스를 이용할 수 있다.

     

    Terraform

       - GUI 기반으로 IaC 서비스 제공

     

    Puppet, Chef 등 여러 Tool이 있다.


     


     

    'Cloud > Cloud' 카테고리의 다른 글

    Cloud) On-premise와 Cloud  (0) 2022.11.21
    Cloud) Application  (0) 2022.09.26

    댓글

Designed by Tistory.