블로그

F5 AS3 및 Red Hat Ansible Automation

F5의 사업 개발 부문 수석 솔루션 엔지니어, Mani Gadde

Ansible Network Automation의 수석 제품 관리자, Andrius Benokraitis

2019년 4월 12일 게시

이미 F5 애플리케이션 서비스 자동화를 시작한 적이 있다면 Ansible과 같은 자동화 도구를 사용하는 것에 익숙할 것입니다. 현재 F5용 Ansible 모듈은 115개가 있으며, 이를 사용하면 라이선싱, 부하 분산, 글로벌 가용성, 트래픽 및 보안 정책 등 다양한 F5 활동과 구성을 자동화하고 관리할 수 있습니다. 고객 요청에 따라 이러한 Ansible 모듈은 F5에서 구축 및 지원됩니다. 더 많은 사용 사례를 지원하고 애플리케이션 서비스 배포를 보다 쉽게 하기 위해 F5는 F5 자동화 툴체인 의 일부로 Application Services 3(AS3)을 출시합니다(자세한 배경 정보는 AS3 사용자 가이드 참조).

Ansible을 사용하여 F5를 자동화하는 것에 대해 고객과 대화하면서 일부 자동화 전문가가 기존 자동화를 보다 지속 가능하고 견고하며 이식 가능하게 만들기 위해 노력하고 있다는 사실이 분명해졌습니다. 자주 듣는 질문 중 하나는 다음과 같습니다. "저는 대부분의 애플리케이션 인프라를 자동화하기 위해 Ansible을 사용하고 있었는데, 이제 AS3에 대해 듣게 되었습니다. Ansible과 마찬가지로 AS3도 F5 BIG-IP에서 애플리케이션 서비스를 구성할 수 있는 것으로 보입니다. 이 솔루션들은 같은 결과를 달성합니까? 제가 취해야 할 권장 접근 방식이 있습니까?”

둘 중 하나를 선택하려는 것은 아니지만, 여러분에게 맞는 접근 방식은 실제로 여러분이 해결하려는 문제에 따라 달라지며, 어떤 경우에는 회사 정책에 따라 달라집니다. 여기서의 목표는 이 질문에 대한 주변 맥락을 제시하여 답하고, 이 두 도구가 얼마나 상호 보완적인지에 대한 아이디어를 제시하는 것입니다. 관심 있는? 계속 읽어보세요…

AS3는 단일 선언적 인터페이스를 사용하여 BIG-IP에서 4~7 계층 애플리케이션 서비스를 구성하기 위해 JSON 문서를 사용하는 BIG-IP API 확장입니다. AS3는 일반적으로 매월 초에 월 단위로 제공되도록 설계되었으며 TMOS 12.1.x 이상에서는 F5에서 이미 지원됩니다.

AS3를 사용해야 하는 경우, Ansible 모듈을 사용해야 하는 경우, 그리고 둘 다 사용해야 하는 경우

가장 단순하게 말하면, AS3와 Ansible 중 무엇을 선택할지는 명령형 구성 방식과 선언형 구성 방식에 대한 선호도에 따라 달라집니다. AS3를 사용하면 명령형 방식이 아닌 선언형 방식으로 F5 구성에 접근할 수 있습니다. Ansible과 함께 AS3를 사용하면 선언에 업계 표준 용어(예: WAF )를 사용하여 구성을 추상화하고 템플릿화할 수 있습니다. 게다가 AS3에 새로운 기능이 추가되면 애플리케이션 구성에 이러한 기능을 더 쉽게 추가할 수 있게 될 것입니다. AS3 선언을 진행할 때 특정 순서로 작업을 배열할 필요가 없기 때문입니다. AS3가 사용자를 대신하여 작업의 단계와 순서를 알아냅니다.

전반적으로 AS3는 JSON을 사용하여 전체 BIG-IP 구성을 템플릿화하는 선언적 인터페이스를 사용하려는 경우에 좋은 선택입니다. Ansible 모듈은 명령형 접근 방식을 계속 사용하거나 임시 작업과 작업으로 시작하고 싶을 때 좋은 선택입니다. 옳은 접근방식이나 그른 접근방식은 없습니다. 이는 모두 자동화 전략에 대한 요구 사항, 필요 사항 및 제약 사항에 따라 달라집니다.

Red Hat Ansible Tower를 사용한 Enterprise F5 자동화

데이터 센터 전체에서 이미 Ansible을 사용하고 있으며 Ansible의 에코시스템을 활용하고 있다면 이제 2가지 옵션이 제공됩니다.

  1. F5 Ansible 모듈을 통해 Ansible을 사용하여 L4-L7 서비스 구성
  2. AS3를 통해 Ansible을 사용하여 L4-L7 서비스 구성

이는 오픈 소스 Ansible 프로젝트로 자동화하려는 경우 추가적인 유연성이 있다는 것을 의미합니다. 개별 BIG-IP 모듈을 사용하여 작업을 자동화하는 방법, 그리고 이제는 AS3를 사용하는 템플릿 방식입니다.

 

Ansible 및 AS3를 사용하여 F5 애플리케이션 서비스를 구성하려면 F5에서 내장한 bigip_appsvcs_extension 모듈 이나 Ansible의 URI 모듈을 사용할 수 있습니다.

Ansible 모듈을 사용하여 F5 App Services를 구성하려면 Ansible 오픈 소스 배포판의 일부로 배포되는 기본 제공 모듈을 사용할 수 있습니다.

그렇다면 자동화된 F5 환경을 어떻게 구현할 수 있을까요? F5와 Red Hat 모두에서 자동화 솔루션을 지원하려면 어떻게 해야 하나요? RBAC, 예약된 자동화 실행 또는 다른 대규모 워크플로우에 통합할 수 있는 RESTful API와 같은 고급 자동화 기능이 필요한 분산 팀이 있습니까? Red Hat Ansible Tower 에서 답을 찾아보세요. F5 고객은 Red Hat Ansible Tower의 성능을 향상시켜 CI/CD 파이프라인의 효율성을 더욱 높일 수 있습니다.

Red Hat Ansible Tower는 Ansible Playbook 개발의 자유를 활용하지만 특히 자동화 전문가가 아닌 경우 네트워크 운영자에게 필요할 수 있는 보호 기능을 추가합니다. Red Hat Ansible Tower를 사용하면 이제 팀은 F5 환경(AS3 또는 F5 Ansible 모듈 사용)을 자동화할 수 있는 유연성을 확보할 수 있으며, 구성을 지속적으로 적용하고 검증할 수 있습니다.

시작하기

시작을 돕기 위해, 자동화 도구를 활용할 때 추상화의 이점을 강조하는 AS3 와 샌드박스 Ansible 환경 에 대한 2분 분량의 비디오 개요를 제공합니다. 개념에 익숙해지면 Galaxy에서 F5 Ansible 역할 도 시도해 보세요.