Cloud Internet Services (CIS) 를 통해 애플리케이션에 대한 액세스 구성
이 튜토리얼에서는 ( CIS )를 IBM Cloud Internet Services 사용하여 가상 서버 배포 가능 아키텍처를 가진 애플리케이션용 Landing zone에 배포된 애플리케이션에 인터넷을 통해 액세스합니다. 필수 인프라를 설정하고 배치 가능한 아키텍처에 배치된 애플리케이션에 액세스하도록 CIS 을 구성하는 방법을 학습합니다.
CIS 은 글로벌 로드 밸런서, 캐싱, 웹 애플리케이션 방화벽 및 페이지 규칙을 제공하여 애플리케이션을 보호하고 신뢰성 및 성능을 향상시킵니다.
목표
- 워크로드 VPC에 있는 VSI에 애플리케이션 배치를 포함하여 운영자가 VPC 환경에 액세스하는 데 필요한 액세스 권한을 지정하십시오.
- 누구나 앱에 액세스할 수 있도록 VPC 로드 밸런서를 통해 인터넷에 애플리케이션을 노출하십시오. 로드 밸런서는 올바르게 작동하는 인스턴스에만 트래픽을 전달하여 VPC (워크로드 VSI에서) 에서 실행 중인 여러 애플리케이션 서버 인스턴스 간에 트래픽을 분배할 수 있습니다.
- 모든 수신 HTTPS 요청에 대한 TLS(Transport Layer Security) 인증서를 관리하려면 를 IBM Cloud Secrets Manager 사용하십시오.
- 애플리케이션에 액세스하도록 Cloud Internet Services (CIS) 를 구성하십시오. Cloudflare를 기반으로 하는 IBM Cloud Internet Services은 IBM Cloud에서 빠르고 고성능이며 신뢰할 수 있고 안전한 인터넷 서비스를 제공합니다.
- 지역 사이에서 글로벌 로드 밸런서를 사용하여 복원성을 늘리고 대기 시간을 줄이도록 고가용성을 구현합니다.
시작하기 전에
- 가상 서버 배포 가능 아키텍처를 가진 애플리케이션을 위한 랜딩 존 인스턴스를 배포하십시오. 자세한 정보는 랜딩 구역 배치 가능 아키텍처 배치 를 참조하십시오.
- 랜딩 존 배치 가능 아키텍처에 작동하는 가상 서버(VSI)가 있는지 확인하십시오.
- Cloud Internet Services (CIS) 의 인스턴스를 작성하고 이를 활성 도메인 이름으로 구성하십시오. CIS Terraform 모듈 을 사용하여 인스턴스를 작성하고 구성할 수 있습니다.
운영자 액세스 지정
VPC landing zone 토폴로지에 대한 네트워크 액세스가 잠겨 있으므로 관리 VPC를 통해 VSI에 대한 운영자 액세스 권한을 지정해야 합니다.
-
옵션 을 검토하여 운영자 액세스 권한을 지정하십시오.
-
다음 접근법 중 하나를 완료하십시오:
이 튜토리얼에서는 관리 VPC의 VSI중 하나를 "점프 박스" 로 노출합니다. 워크로드 VPC에 액세스하고 워크로드 VPC에 있는 워크로드 VSI에 애플리케이션을 배치합니다.
애플리케이션을 배치하는 모든 VSI에 대한 운영자 액세스 권한을 지정하십시오.
워크로드 VSI에 애플리케이션 배치
-
관리 VPC를 통해 워크로드 VSI (예: <your_prefix>-workload-server-001) 에 액세스하십시오.
- 워크로드 VPC의 ACL에 액세스하고 인바운드 및 아웃바운드 규칙 을 작성하여 관리 VPC에 대해 SSH 통신 (포트 22) 을 사용으로 설정하십시오.
- 마찬가지로, 워크로드 VPC에 대한 관리 VPC의 ACL에서 SSH를 사용하도록 인바운드 및 아웃바운드 규칙을 작성하십시오.
- 시스템에서 관리 서버로 SSH키 (관리 VSI에 로그인하는 데 사용됨) 를 복사하십시오.
- 관리 서버에 로그인하고 예약된 IP및 이전에 복사한 SSH키를 사용하여 워크로드 VSI에 SSH를 수행하십시오.
- 워크로드 VSI에 로그인했는지 확인하십시오.
-
애플리케이션을 배치하십시오.
애플리케이션 배치에 대한 자세한 정보는 여러 위치 및 구역에 격리된 워크로드 배치에서 가상 서버 인스턴스에 웹 서버 설치 및 구성 을 참조하십시오. 이 학습서에서는 nginx를 참조하지만 포트
80의 워크로드 VSI에 Apache 서버를 배치합니다.-
서버를 Apache 설치하려면 다음 명령어를 실행하십시오:
apt-get updateapt-get install apache2 --yes -
설치를 확인하려면 다음 명령을 실행하십시오:
curl http://localhost:80
-
-
이 단계를 반복하여 다른 워크로드 VSI에 애플리케이션을 배치하십시오.
Secrets Manager 에서 인증서 작성
-
IBM Cloud Secrets Manager 도메인 인증서를 주문하거나 가져온 후 관리하는 데 사용됩니다. 보안을 설정하는 단계를 따라 HTTPSSecrets Manager 인스턴스를 생성하고 인증하십시오.
-
인증 기관 및 DNS 제공자를 추가하십시오.
- Secrets Manager 서비스를 열고 시크릿 엔진에서
Public Certificates를 선택하십시오. - Let's Encrypt 인증 기관 엔진을 사용하여 인증 기관을 구성하십시오.
- DNS 제공자에서 CIS 인스턴스를 선택하십시오.
- Secrets Manager 서비스를 열고 시크릿 엔진에서
-
대안 1: 프록시, CIS를 통한 트래픽 플로우 에 설명된 대로 Secrets Manager에서 공용 인증서를 주문하십시오.
공용 VPC 로드 밸런서 연결
이제 애플리케이션이 워크로드 VSI에 배치되었으므로 공용 인터넷을 통해 앱에 대한 액세스를 허용하도록 로드 밸런서를 구성하십시오.
-
공용 Application Load Balancer for VPC를 작성하십시오.
- 이 튜토리얼 에 따라 공용 VPC 로드 밸런서를 연결하십시오.
- 프론트 엔드 리스너의 경우 리스너 프로토콜
HTTPS, 포트443를 사용하고 Secrets Manager 인스턴스 및 이전 단계에서 작성한 공용 인증서를 첨부하십시오. - 포트
80및 포트443에 대해 외부 트래픽을 허용하도록 보안 업데이트 의 단계를 따르십시오.
-
액세스를 확인하십시오.
- 로드 밸런서의 호스트 이름을 검색하십시오.
- VPC 인프라 > 로드 밸런서 로 이동하십시오.
- 로드 밸런서 선택
- Hostname 의 값을 복사하십시오.
- 브라우저에
https://<hostname>를 붙여넣고 앱이 응답하는지 여부를 확인하십시오.
- 로드 밸런서의 호스트 이름을 검색하십시오.
CIS 인스턴스에서 DNS 레코드 구성
클라이언트가 도메인 (예: example.com) 을 검색하고 xxx-REGION.lb.appdomain.cloud 를 분석할 수 있도록 DNS CNAME 레코드를 작성하십시오.
-
CIS에서 신뢰도 페이지를 열고 DNS 를 선택하십시오.
-
DNS 레코드로 스크롤하여 레코드를 작성하십시오.
- 종류: CNAME
- 이름: vpc-lb
- TTL: 자동
- 별명 도메인 이름: VPC 로드 밸런서 호스트 이름.
- vpc-lb에 대한 DNS CNAME 레코드 추가
-
다른 리젼에 대한 DNS 레코드를 추가하려면 이 단계를 반복하십시오.
응용 프로그램을 통해 HTTPS 액세스하십시오. CIS
애플리케이션이 인터넷을 통해 사용 가능한지 확인하려면 브라우저에서 https://vpc-lb.<your_domain> (예: https://vpc-lb.example.com) 로 이동하십시오.
글로벌 로드 밸런서 작성
이 섹션에서는 리젼 간에 로드를 분배하도록 CIS 을 구성합니다. 새 CNAME 레코드를 사용하도록 CIS 인스턴스에서 글로벌 로드 밸런서를 구성합니다.
글로벌 로드 밸런서를 작성하기 전에 상태 검사를 구성하여 애플리케이션의 가용성을 유효성 검증하고 VPC 로드 밸런서를 가리키는 오리진 풀을 정의합니다.
상태 검사 구성
상태 검사는 트래픽이 정상 상태인 풀로 라우팅될 수 있도록 풀의 가용성을 살펴보는 데 도움이 됩니다. 이러한 검사들은 주기적으로 요청을 HTTPS 전송하고 응답을 모니터링합니다.
- 대시보드에서 CIS Reliability > Global Load Balancers 로 이동하십시오.
- 상태 확인을 선택하고 작성을 클릭하십시오.
- 이름을.
vpc-lb로 설정하세요. - 모니터 유형으로
HTTPS를 선택하십시오. - 포트 를 기본값으로 설정된 상태로 두십시오.
- 경로를.
/로 설정하십시오. - 작성을 클릭하십시오.
오리진 풀 정의
풀은 글로벌 로드 밸런서에 연결될 때 트래픽이 지능적으로 라우팅되는 원본 VSI 또는 로드 밸런서 그룹입니다. 위치 기반 풀을 정의하고 사용자 요청의 지리적 위치에 따라 사용자를 가장 가까운 VPC 로드 밸런서로 리디렉션하도록 CIS 구성할 수 있습니다.
- 오리진 풀을 선택하고 작성을 클릭하십시오.
- 풀의 이름을 입력하십시오:
vpc-lb. - 원점 이름을
vpc-lb(으)로 설정하십시오. - 원래 주소 를 이전에 지정한 새 CNAME 레코드로 설정하십시오.
- 기존 상태 검사 를 선택하고 방금 작성한 상태 검사를 선택하십시오.
- 사용자의 위치에 가까운 상태 검사 지역 을 선택하십시오.
- 저장 을 클릭하십시오.
- 다른 지역에 대해 이 단계를 반복하십시오.
오리진 풀의 상태가 healthy 로 표시될 때까지 몇 초 동안 기다리십시오.
글로벌 로드 밸런서 구성
이제 오리진 풀이 정의되었으므로 로드 밸런서의 구성을 완료할 수 있습니다.
- 로드 밸런서를 선택하고 작성을 클릭하십시오.
- 사용 (
On) 및 프록시 (Off) 의 기본값을 유지하십시오. - 글로벌 로드 밸런서의 이름을
vpc-lb-glb로 지정하십시오. 이 이름은 애플리케이션에 액세스하기 위한 서브도메인의 초기 문자를 형성합니다 (예: https://vpc-lb-glb.<your_domain>). - TTL, 트래픽 스테어링, 세션 선호도 를 애플리케이션에 대해 작동하는 설정으로 설정하십시오.
- 라우트 추가를 클릭하십시오.
- 지역:
Default을(를) 선택하십시오. - 방금 작성한 오리진 풀을 선택하십시오.
- 추가 를 클릭하십시오.
- 작성을 클릭하십시오.
- 브라우저에서
https://vpc-lb-glb.<your_domain>(예:example.com) 에 액세스하여 글로벌 로드 밸런서가 사용 가능한지 확인하십시오.
튜토리얼 확장
CIS을 통해 랜딩 구역에 배치된 워크로드에 액세스했습니다.
더 안전하게 하기 위해 CIS 에서 WAF, DDoS 와 같은 추가 기능 을 구성할 수 있습니다. 자세한 내용은 다음 항목을 참조하십시오: