하이브리드 클라우드에서의 Citrix ADC 자동화

혁신을 주도하며 경쟁력을 높이기 위해 멀티 클라우드 전략을 채택하려는 기업들은 멀티 클라우드 환경에서 일관된 애플리케이션 제공 및 보안을 달성하는 방법이라는 중요한 문제에 직면해 있습니다. 이 문제를 해결하기 위한 핵심은 자동화입니다.

 

다음 그림은 HMC(하이브리드 멀티 클라우드) 환경에서 Citrix ADC 자동화의 개요입니다.

 

-Automation Tools 사용의 이점

 

 

멀티 클라우드에서 프로비저닝 간소화

인프라 프로비저닝 도구인 Terraform을 사용하면 퍼블릭 클라우드에서 배포를 자동화할 수 있습니다. AWS에서 Citrix ADC VPX를 프로비저닝 하기 위한 Terraform 클라우드 스크립트를 제공합니다.

 

멀티 클라우드에서 일관된 구성 보장

Citrix ADC를 배포한 후 Citrix ADC 인스턴스에 대한 구성 관리 도구로 Terraform을 사용할 수 있습니다. 로드 밸런싱, SSL 오케스트레이션, 콘텐츠 전환, GSLB 등과 같은 용도로 ADC를 구성할 수 있습니다.

여러 클라우드에서 이러한 구성 스크립트를 재사용하여 ADC 인스턴스 전체에서 일관성을 유지할 수 있습니다.

 

멀티 클라우드 전반에서 일관된 보안 정책 보장

Citrix ADC와의 Terraform 및 Ansible 통합을 통해 WAF 및 봇 관리 정책을 코드로 정의할 수 있습니다. GitHub와 같은 SCM 도구를 통해 중앙에서 보안 정책을 유지 관리하고 버전을 지정할 수 있으므로 신뢰할 수 있는 단일 소스가 있습니다. 자동화를 활용하면 멀티 클라우드 환경 전체에 보안 정책을 원활하게 적용하여 일관된 보안 정책을 유지할 수 있습니다.

 

 

-Terraform을 활용한Citrix ADC 자동화

 

Terraform 이란?

Terraform은 Hashicorp에서 오픈소스로 개발 중인 클라우드 Infrastructure자동화를 지향하는 코드 로서의 Infrastructure as Code, IaC 도구입니다.

 

Terraform 기본 개념

  • resource: 실제로 생성할 인프라 자원을 의미합니다.
  • provider: 리소스들이 배포될 환경을 정의한 내용입니다.
  • output: 인프라를 provisioning 한 후에 생성된 자원을 output 부분으로 뽑을 수 있습니다.
  • backend: 상태 snapshot이 저장되는 위치를 정의합니다.
  • module: 함께 사용되는 여러 리소스의 컨테이너입니다.
  • remote state: VPC, IAM 등과 같은 공용 서비스를 다른 서비스에서 참조할 수 있습니다.

 

Terraform 명령어

Init

  • Terraform 구성 파일이 포함된 작업 디렉토리를 초기화하는 데 사용됩니다.

 

plan

  • 정의한 코드가 어떤 인프라를 만들게 되는지 미리 예측 결과를 보여줍니다. 단, plan을 한 내용에 에러가 없다고 하더라도, 실제 적용되었을 때는 에러가 발생할 수 있습니다.

 

apply

  • 실제로 인프라를 배포하기 위한 명령어입니다.

 

import

  • 이미 만들어진 자원을 Terraform state 파일로 옮겨주는 명령어

 

 

 

 

– Citrix ADC 자동화 실습

1.Terraform 설치

가상 LAB 환경인 Instruqt에서 Terraform 설치

 

2.Citrix ADC 설정

아래 그림과 같이 resources.tf 파일을 편집하여 서버 및 서비스를 생성할 수 있습니다. resources.tf 에는 Terraform을 통해 관리하려는 리소스의 상태가 포함되어 있습니다.

여기서 저는 Web_S1,2 라는 서비스와 해당 서비스를 LB처리를 하는 Web_lbvserver 라는 HTTP LB Vserver를 생성했습니다.

 

3.설정 적용

Terraform에서 제안한 구성 변경 사항을 검토하고 yes를 입력하여 승인합니다.

backend 서비스가 가동되면 LB Vserver 상태가 표시되고 사용자 트래픽을 수신하고 서비스에서 부하를 분산할 준비가 됩니다.

 

4.설정확인

아래 그림과 같이 설정을 정의한 Citrix ADC에 접속해 위에서 선언한 서비스 및 LB Vserver 가 정상적으로 생성된 걸 확인할 수 있습니다.

간단한 LB 설정만 테스트를 진행했지만 GitHub통해 Citrix ADC Terraform provider를 복제하여 다양한 예제를 사용할 수 있습니다. (GSLB,WAF,SSL오케스트레이션…)

Ø  git clone https://github.com/citrix/terraform-provider-citrixadc/