IaC(Infrastructure as Code)는 CI/CD 개발을 위한 일관적인 배포 환경을 생성하도록 반복 가능한 구성 파일을 사용하는 IT 시스템 인프라 관리 접근 방식입니다.
IaC(Infrastructure as Code)는 수동 구성이나 기존 구성 도구를 사용하는 대신 선언적 또는 스크립팅된 정의(코드)를 통해 하드웨어, 가상 리소스, 플랫폼, 컨테이너 시스템, 서비스 및 토폴로지를 포함한 인프라를 프로비저닝 및 관리하는 것을 의미합니다. IaC는 구성, 정책, 프로파일, 스크립트 및 템플릿을 배포되는 하드웨어 또는 소프트웨어에서 분리하여 코드처럼 저장, 공유, 수정 및 적용이 가능하도록 합니다.
클라우드 인프라의 인기와 함께 성장한 이 접근 방식은 DevOps 사고 방식에서 비롯되어 개발자가 앱 소스 코드에 사용하는 것과 동일한 버전의 제어 및 반복성을 인프라 구성에 적용합니다. IaC 접근 방식은 동일한 인프라 환경을 매번 적용하여 지속적인 통합, 제공 및 배포를 지원합니다.
코드와 같이 인프라를 처리하는 기능은 자동화, 가시성, 효율성 및 확장성의 이점을 인프라 관리에 제공하므로 애플리케이션을 보다 빠르고 안정적으로 배포할 수 있으며, 인적 오류 또는 보안 취약점의 위험을 줄일 수 있습니다. 구성은 시스템으로부터 분리되기 때문에 다른 곳의 유사한 시스템에 보다 용이하게 배포될 수 있습니다. 이러한 방식으로 데이터 센터에서 클라우드로 또는 하나의 클라우드에서 다른 클라우드로 마이그레이션할 때의 문제를 줄입니다.
IaC는 또한 샌드박스, 테스트 및 프로덕션 환경이 모두 동일한 선언적 코드 또는 스크립트로 구성되기 때문에 시간이 지남에 따라 동일하고 일관되게 유지되도록 함으로써 민첩한 개발 및 CI/CD 전략을 지원합니다.
서버, 로드 밸런서, 가상 머신 및 기타 데이터 센터 또는 클라우드 리소스의 IaC 구성은 (결과를 세부적으로 설명하지 않고) 명령을 지정하는 명령적 접근 방식이나 (사전에 존재하는 워크플로우 및 템플릿을 기반으로 도달 방식을 세부적으로 설명하지 않고) 원하는 구성 결과를 지정하는 선언적 접근 방식을 사용하여 달성할 수 있습니다. 샌드위치를 주문하고 샌드위치를 만드는 사람이 단계와 주문을 알고 있다고 믿거나(선언적) 샌드위치가 나온다고 반드시 언급하지 않고 필요한 모든 단계를 지정하는 것(명령적)으로 그 차이를 구분할 수 있습니다.
선언적 또는 명령적 접근 방식을 사용하는지 여부와 무관하게 IaC는 프로비저닝 및 인프라 관리를 자동화합니다.
F5 BIG-IP 플랫폼은 플러그인 또는 IaC 구성 및 버전 관리 도구(예: Terraform 및 Ansible)를 위한 F5 Application Services 3(AS3) 확장 툴을 사용해 "코드"로 취급될 수 있습니다.
F5 Automation Toolchain은 AS3 확장 프로그램 및 F5 Declarative Onboarding(DO) 확장 프로그램을 통합합니다. AS3는 BIG-IP 시스템에서 L4-L7 애플리케이션 서비스를 구성하기 위한 JSON 선언 기반의 유연하고 낮은 오버헤드의 메커니즘입니다. DO 확장 프로그램은 BIG-IP 제품에 대한 선언적 L1-L3 온보딩을 지원합니다.