NGINX에게 올해는 Ansible의 해입니다.
우리는 병목 지점에서 애플리케이션을 지능적으로 확장하여 애플리케이션 전체의 인프라를 확장할 필요가 없도록 하는 애플리케이션 중심의 애플리케이션 제공 방식을 지향합니다. 이 방식을 실현하는 데 핵심적인 역할을 하는 것은 개발자들이 사용하는 방대한 CI/CD 도구 생태계입니다. 가장 널리 사용되는 자동화 도구 중 하나인 Ansible을 통해 NGINX 사용자는 애플리케이션 수명 주기 전반의 반복 작업을 신속하게 자동화할 수 있습니다. 이에 따라 NGINX 환경을 손쉽게 자동화할 수 있도록 더 많은 Ansible 역할과 컬렉션을 구축하는 데 대규모 투자를 단행했습니다. 지난 5년 동안 단 하나의 블로그 게시물로 시작한 Ansible 통합을 인증 컬렉션 2개와 20개 이상의 역할로 확장했으며, 그중 대부분은 최근 9개월 동안 만들어졌습니다!
NGINX 프로비저닝에 Ansible을 사용하는 이유
Ansible을 사용하여 NGINX를 프로비저닝해야 하는 데에는 몇 가지 훌륭한 이유가 있습니다:
- 아마 이미 Ansible을 사용하고 계실 것입니다. 그렇지 않더라도 적어도 Ansible을 사용해 볼 것을 진지하게 고려하고 계실 것입니다. 그렇지 않았다면 이곳에 오지 않으셨겠죠!
- 분산형이며 복원력과 이중화를 갖춘 멀티 클라우드 배포가 점점 더 보편화되고 있습니다. Ansible은 여러 대상 호스트에 NGINX 소프트웨어를 손쉽게 설치하고 구성하는 데 필요한 도구를 제공합니다.
- Ansible을 단일 정보 소스로 사용하면 모든 NGINX 배포를 중앙에서 파악할 수 있는 탁월한 가시성을 확보할 수 있습니다. 모든 배포 정보는 가독성이 가장 뛰어난 구성 언어 중 하나인 YAML로 작성된 Ansible 플레이북에 저장됩니다.
- 당사의 컬렉션은 Red Hat의 인증을 받았으며 전폭적인 지원이 제공됩니다. 문제가 발생하더라도 수상 경력에 빛나는 Red Hat 지원 서비스를 통해 신속하게 정상화할 수 있습니다.
Ansible의 역사
새로운 NGINX Core 컬렉션에 대해 이야기하기 전에, Ansible과 함께해 온 여정을 되돌아보겠습니다.
2015년:
- 설치를 위한 Ansible 플레이북을 만드는 방법을 설명하는 블로그 게시물을 게시했습니다. 설치 대상은 NGINX 및 NGINX Plus였습니다. 한 커뮤니티 구성원은 이 블로그 게시물이 금세 쓸모없어질 것이므로 공식 Ansible 역할을 개발하고 유지 관리해야 한다고 (타당하게) 지적했습니다.
2017년:
- NGINX와 NGINX Plus의 기본 설치를 각각 수행하는 최초의 Ansible 역할 두 개를 출시했습니다.
2018년:
- 초기의 두 역할을 하나의 nginx 역할로 통합하여 NGINX와 NGINX Plus를 모두 설치할 수 있도록 했습니다.
- NGINX를 구성하고 NGINX Unit 및 NGINX Amplify를 설치할 수 있도록 nginx 역할을 개선했습니다.
2020년:
- 16개의 새로운 역할과 인증된 컬렉션을 NGINX Controller용으로 출시했습니다.
- 새롭게 선보인 보안 솔루션인 nginx_app_protect 역할을 사용하여 NGINX App Protect를 설치하고 구성할 수 있습니다.
- Split the nginx 역할을 세 개의 개별 역할로 분리하고 두 번째 인증 컬렉션인 NGINX Core를 출시했습니다.
The Evolution of the nginx 역할의 발전 과정
The nginx 역할은 Ansible Galaxy에서 가장 인기 있는 역할 중 하나로 2018년에 출시한 이후 70만 회 이상 다운로드되었습니다. 하지만 높은 인기에도 불구하고, 기능이 너무 방대하고 설치하는 데 시간이 너무 오래 걸린다는 의견이 있었습니다. 모든 기능을 갖춘 만능 스위스 아미 나이프™를 선호하는 사람도 있지만, 메스처럼 정교하고 간결한 접근 방식에는 많은 이점이 있습니다(Ansible 자체도 컬렉션을 도입하면서 이러한 접근 방식을 따랐습니다). 이를 고려하여 유연성과 속도를 높이기 위해 nginx 역할을 세 가지 개별 역할로 분리하기로 했습니다:
- nginx – NGINX 및 NGINX Plus 설치
- nginx_config – NGINX 및 NGINX Plus를 구성합니다
- nginx_unit – NGINX Unit를 설치합니다
NGINX Core 컬렉션 소개
Ansible 제품을 지속적으로 개선해 나가는 과정에서 Ansible 2.10에 컬렉션이 도입됨에 따라, 빠르고 안전한 웹 서비스, 리버스 프록시 및 부하 분산을 위한 소프트웨어라는 NGINX의 “핵심” 제품에 중점을 둔 NGINX 컬렉션을 만들었습니다. 이에 따라 NGINX Core 컬렉션에는 세 가지 역할이 포함됩니다. 이전 섹션에서 언급한 NGINX 및 NGINX Plus 설치 및 구성용 역할 두 가지(nginx 및 nginx_config)와 NGINX Plus용 완전한 기능을 갖춘 WAF 모듈인 NGINX App Protect를 설치하고 구성하기 위한 nginx_app_protect 역할입니다.
NGINX Core 컬렉션은 역할을 사용하는 것만큼 간단하게 사용할 수 있습니다. 설치하려면 다음 명령을 실행합니다:
$ ansible-galaxy collection install nginxinc.nginx_core그런 다음 Ansible 플레이북의 시작 부분에 다음 줄을 추가하여 플레이북에서 컬렉션의 역할을 사용할 수 있습니다:
---
- collections:
- name: nginxinc.nginx_core
version: 0.1.3NGINX Core 컬렉션에는 간단한 NGINX 설치부터 여러 웹 서버 앞에 NGINX App Protect로 보호되는 리버스 프록시를 설정하는 작업까지 다양한 사용 사례를 다루는 일련의 플레이북도 포함되어 있습니다. 또는 각 역할의 molecule 디렉터리에 포함된 플레이북에서 역할별 최신 실행 예제를 확인할 수도 있습니다.
NGINX Core와 NGINX Controller 컬렉션 중 선택하기
저희가 제공하는 두 가지 NGINX 컬렉션 중 어느 것이 가장 적합한지 궁금하실 수 있습니다. 흔히 그렇듯, 답은 사용 사례에 따라 달라집니다.
- NGINX Core – 다음에 해당하는 경우 이 컬렉션을 선택하세요:
- NGINX Open Source 사용자입니다
- NGINX Plus를 직접 관리하는 데 익숙한 사용자
- NGINX App Protect를 구성하려는 경우
- NGINX Controller를 사용하지 않음
- NGINX Controller – NGINX Controller 구독자인 경우 이 컬렉션을 선택하세요.
NGINX 역할 및 컬렉션 시작하기
Ansible Automation Platform 구독자는 Ansible Automation Hub의 nginxinc 네임스페이스에서 인증된 NGINX 컬렉션을 이용할 수 있습니다. 또는 Ansible Galaxy에서 역할 및 컬렉션의 업스트림 커뮤니티 버전을 찾을 수 있습니다. 10월 13~14일에 온라인으로 열리는 AnsibleFest에 참여하여 NGINX Core 컬렉션에 관한 Alessandro의 세션을 들어보시기 바랍니다. 또한 가상 부스를 방문해 저자들과 이야기를 나누고, 데모와 웨비나를 독점적으로 이용하며, 기념품을 받을 기회도 잡아보세요!
저희는 이 컬렉션을 NGINX와 커뮤니티의 노력을 통해 지속적으로 발전해 나갈 출발점으로 생각합니다. 컬렉션 개발에 기여해 주시고 어떤 새로운 기능이 중요한지 알려주세요.
NGINX Plus와 NGINX App Protect를 사용해 보고 싶다면 지금 30일 무료 평가판을 신청하거나 사용 사례에 대해 논의하려면 문의해 주세요.
Red Hat과 NGINX의 협력을 통해 양사의 강점을 모두 누릴 수 있습니다! 양사는 함께 다음을 제공합니다:

작성자 소개
관련 블로그 게시물
시청하기: KubeCon North America 2023에서의 NGINX Gateway Fabric
이 영상에서는 KubeCon의 NGINX 부스를 찾아가, 저희가 공개한 Kubernetes Gateway API 구현을 살펴봅니다.
F5 NGINX로 대규모 WAF 플릿을 확인하고 관리하는 2가지 방법
앱 보안을 강화하는 두 가지 방법을 소개합니다. NGINX Management Suite를 통해 WAF 운영에 대한 가시성을 높이고, NGINX App Protect WAF를 활용해 코드형 보안을 구현하는 것입니다.
Ingress 컨트롤러 선택 가이드, 4부: NGINX Ingress Controller 옵션
개발 주체, 개발 철학, 프로덕션 환경 준비도, 보안 및 지원을 기준으로 어떤 NGINX Ingress 컨트롤러가 가장 적합한지 알아보세요.
진화하는 공격 환경에 NGINX App Protect Denial of Service가 적응하는 방법
NGINX App Protect Denial of Service(DoS)가 계층 7 DoS 공격을 방어하기 위해 완화 방법을 실시간으로 조정하는 방식을 설명합니다. 정상적인 사용자 행동과 서버 상태에 대한 모델을 생성하여 공격을 나타내는 이상 징후를 감지하고 맞춤형 완화 시그니처를 적용할 수 있습니다.
NGINX Instance Manager를 활용한 대규모 구성 업데이트 및 인증서 관리
NGINX Instance Manager 버전 1.0에는 두 가지 새로운 기능이 도입되었습니다. NGINX 인스턴스에 태그와 사용자 역할을 지정하면 전체 그룹에 구성을 한 번에 적용할 수 있습니다. 인증서 검사는 만료 예정인 인증서를 감지하여 서비스 중단을 방지할 수 있도록 인증서를 교체할 수 있게 해줍니다.
Netflix가 자사 CDN의 핵심으로 NGINX를 선택한 이유
Netflix가 글로벌 콘텐츠 전송 네트워크인 Open Connect의 스트리밍 미디어 기술로 NGINX를 선택한 이유를 NGINX 개발자 Gleb Smirnoff에게서 알아보세요.
