IVS 프라이빗 수집
안전한 라이브 비디오 수집이 필요한 워크로드의 경우 인터페이스 VPC(Virtual Private Cloud) 엔드포인트를 사용하여 Amazon VPC와 IVS 간에 안전한 프라이빗 연결을 설정할 수 있습니다. 이렇게 하면 IVS 수집 트래픽이 AWS 네트워크 내부 및 퍼블릭 인터넷 외부로 유지됩니다. 인터페이스 VPC 엔드포인트는 Amazon VPC에서 프라이빗 IP 주소가 있는 탄력적 네트워크 인터페이스를 사용하여 AWS 서비스 간 프라이빗 통신을 사용할 수 있는 AWS 기술인 AWS PrivateLink에 의해 구동됩니다. 자세한 내용은 Amazon Virtual Private Cloud와 인터페이스 VPC 엔드포인트를 이용한 AWS 서비스 액세스(AWS PrivateLink)를 참조하세요.
Amazon VPC에서 또는 AWS Direct Connect를 통해 RTMP(S) 스트림을 IVS로 수집하고, 지연 시간이 짧은 IVS 채널 또는 IVS 실시간 스테이지로 비디오를 비공개 전송할 수 있습니다. 표준 인터페이스 VPC 엔드포인트 시간당 사용량 및 데이터 처리 요금이 청구됩니다. 자세한 내용은 인터페이스 엔드포인트 요금
Amazon VPC가 지원되는 리전에 있는지 확인하세요. 지원되는 리전은 다음과 같습니다.
-
ap-northeast-1
-
ap-northeast-2
-
ap-south-1
-
ap-southeast-1
-
ap-southeast-2
-
eu-central-1
-
eu-north-1
-
eu-west-1
-
eu-west-3
-
sa-east-1
-
us-east-1
-
us-east-2
-
us-west-2
참고: Amazon VPC가 지원되는 리전 중 하나에 있어야 하지만 IVS 컨트롤 플레인 리소스는 Amazon VPC와 동일한 리전 또는 AWS 계정에 있을 필요는 없습니다. 자세한 내용은 글로벌 솔루션, 리전별 제어를 참조하세요.
인터페이스 VPC 엔드포인트를 통해 스트림을 수집하려면 VPC 엔드포인트의 DNS 이름과 IVS 리소스의 스트림 키(채널 또는 스테이지 수집 구성)로 구성된 프라이빗 수집 URL을 다음 형식으로 사용합니다.
rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>
채널로 스트리밍하려면 스트리밍 소프트웨어 설정의 설명과 같이 채널을 생성하고 해당 스트림 키를 검색합니다. RTMP(S) 또는 E-RTMP(S)를 사용하여 스테이지로 스트리밍하려면 RTMP 수집 구성을 생성하고 연결된 스트림 키를 사용합니다.
아래에서 인터페이스 VPC 엔드포인트를 사용하여 EC2 인스턴스에서 IVS 채널 또는 스테이지로 스트리밍하는 방법을 간단하게 안내합니다.
1단계: 인터페이스 VPC 엔드포인트 생성
각 VPC 엔드포인트는 계정의 VPC와 연결되어야 합니다. 계정에 이미 기본 VPC가 있는 경우 해당 VPC를 사용할 수 있습니다. 없는 경우에는 새 VPC를 생성합니다. VPC 엔드포인트에서 IPv6 또는 듀얼 스택을 사용하려면 VPC에 IPv6 CIDR이 할당된 서브넷이 있어야 합니다.
VPC 엔드포인트를 생성하려면 VPC 엔드포인트 생성(Amazon VPC 설명서)의 지침을 참조하세요. 엔드포인트 생성 페이지에 있는 경우:
-
AWS 서비스를 선택합니다. 서비스 섹션에서 IVS를 검색합니다. com.amazonaws.<region>.ivs.contribute와 같은 서비스가 표시됩니다.
-
네트워크 설정 섹션에서 엔드포인트를 생성할 VPC를 선택합니다. 서브넷 섹션에서 엔드포인트에 대해 구성할 서브넷 및 기타 네트워크 설정을 선택합니다.
-
보안 그룹 섹션에서 스트리밍할 모든 위치로부터 TCP 포트 443 및 1935의 인바운드 트래픽을 허용하는 보안 그룹을 선택합니다. 엔드포인트를 생성한 후 나중에 편집할 수 있으므로 아직 사용할 보안 그룹을 모르는 경우에는 선택하지 않은 상태로 둡니다.
엔드포인트 생성을 선택하면 VPC 엔드포인트 페이지로 돌아가고, 여기에 방금 생성한 VPC 엔드포인트가 표시됩니다.
-
새 엔드포인트의 상태가 약 30초 동안 보류 중이다가 자동으로 수락되고 상태가 녹색의 사용 가능으로 변경됩니다.
-
VPC 엔드포인트 정보 패널의 오른쪽에 VPC 엔드포인트와 연결된 몇 개의 DNS 이름이 표시됩니다. 나열된 첫 번째 이름을 복사하여 저장합니다. 이후 단계에서 이를 스트림 수집 서버 URL로 지정해야 합니다.
2단계: EC2 인스턴스 시작
고객이 AWS에서 스트림을 브로드캐스트하는 데 사용할 수 있는 많은 옵션이 있습니다. 이 예시에서는 FFmpeg가 설치된 Ubuntu EC2 인스턴스를 사용합니다.
먼저 EC2 인스턴스를 생성합니다(t2.micro가 좋음). VPC 엔드포인트를 생성한 곳과 동일한 VPC 내에 인스턴스를 생성해야 합니다.
이 인스턴스에 할당한 보안 그룹은 TCP 포트 443 및 1935의 VPC 엔드포인트로 송신해야 합니다. 또한 SSH를 사용하여 인스턴스에 액세스하는 경우 TCP 포트 22에서 수신을 활성화하고, 아래 3단계의 패키지 관리자 작업을 위해 TCP 포트 80에서 송신을 활성화해야 합니다.
인스턴스를 시작합니다. 초기화되면 SSH 또는 AWS 세션 관리자를 사용하여 인스턴스에 연결합니다.
3단계: 인스턴스에 FFmpeg 설치
인스턴스에 연결되면 시스템(Ubuntu로 인스턴스를 생성했다고 가정)에서 다음 명령을 실행하여 FFmpeg를 설치합니다.
sudo add-apt-repository ppa:savoury1/ffmpeg4 sudo apt-get update sudo apt-get install ffmpeg
4단계: IVS 채널 또는 스테이지로 스트리밍
프라이빗 수집 URL 형식:
rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>
예:
rtmps://vpce-0a8dfb0b7a4611439-xyzabc12.contribute.ivs.us-west-2.vpce.amazonaws.com/app/sk-usw2-abc123example456
다음 FFmpeg 명령 예시를 실행합니다. 여기서 <VPC_ENDPOINT_DNS_NAME>을 1단계의 DNS 이름으로 바꾸고, <STREAM_KEY>를 적절한 스트림 키(채널 또는 수집 구성의 경우)로 바꿉니다.
ffmpeg -re -f lavfi -i "testsrc=duration=360:size=1024x768:rate=30" -f lavfi -i "sine=frequency=1000" -pix_fmt yuv420p -profile:v baseline -level 3.0 -r 30 -g 60 -shortest -vcodec libx264 -acodec aac -f flv "rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>"
위의 모든 작업이 성공하면 스트리밍이 실행 중이어야 합니다. VPC 엔드포인트를 통해 수집된 스트림은 퍼블릭 IVS 엔드포인트를 통해 수집된 스트림과 동일하게 처리되어야 합니다. 유일한 차이점은 수집 경로입니다.
완료되면 불필요한 요금이 발생하지 않도록 생성된 EC2 인스턴스와 VPC 엔드포인트를 삭제해야 합니다.