← 전체 글로 돌아가기
블로그

여러 개 클라우드 트랜스코딩 서버, 저장소에 해당하는 또는 재생 서버의 분산된 구조가 실현되었습니다

이 과정은 순수한 버전으로 적용될 수 있습니다 theoneffmpeg 또한 고급 지능에 대해서도 언급할 수 있다 클라우드 트랜스코딩 express-ffmpeg-vip 위에 있는필요한 경우 이 분산된 구조를 스스로 구축하거나, 부하 균형을 잡거나, 저렴한 가격의 높은 배달 기계를 이용할 수 있습니다 트랜스코딩 하드 드라이브의 낮은 범위와 높은 범위를 제공합니다 재생 분산된 건축의 한 종류입니다.

원칙

mongodb 처음부터 디자인은 분산된 구조를 사용하여 자동으로 생성되는 데이터베이스입니다 OBJECTID 중요한 것은, 이 ID 예요 5d6de52360e715be825959dd 24비트 영어와 숫자로 구성되어 있으며, 여기서 소유한 정보는 시간을 누르고 서버가 있습니다 ID 그래서 이 OBJECTID 그것은 절대적으로 독특하며, 각 기계에서 동시에 생성되는 것과는 다르며, 따라서 존재하지 않습니다 ID 갈등의 상황, 그래서 오늘날이 분산된 구조에 대한 교과서가 나타났다.

촬영

단계

첫 번째 단계 에 트랜스코딩 기계 1에서 4까지 순수한 버전을 설치합니다 theoneffmpeg 또는 똑똑한 클라우드 트랜스코딩 express-ffmpeg-vip 시스템을모든 설치 디렉토리를 설정하는 것은 동일합니다, 예를 들어 내가 여기에서 설정한 설치 카탈로그는 모두 /www/express-ffmpeg.

두 번째 단계 각각의 트랜스코딩 기계에서 모두 다운로드 mc 클라이언트 도구,이 도구는 아마존에 접촉 할 수 있습니다 S3,minio 그리고 google 클라우드 스토리지.

cd /~
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
./mc --help

세 번째 단계 서버에 저장 또는 재생 서버 위에 설치 MINIO 시스템에 대하여 minio 시스템은 분산된 개체 저장 시스템으로, 서버가 즉시 개체를 저장하는 서버로 변할 수 있습니다.

네 번째 단계 에 트랜스코딩 서버는 동기화 프로세스를 설정하고 모든 것을 자동으로 세그먼트 분할 아니면 나중에 늘어난다 세그먼트 분할 스토리지 서버 또는 개체 저장소에 동기화합니다.만약 건설이 없다면 MINIO 스토리지 서버 (즉, 세 번째 단계)는 아마존을 사용할 수 있습니다 S3 아니면 구글 클라우드 스토리지 또한 동일한 효과가 있습니다.

예제 - 미니오 클라우드 스토리지

에서부터 MinIO 서비스 받기 URL、access key 그리고 secret key.

./mc config host add minio http://192.168.1.51 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v4

예제 - 아마존 S3 클라우드 스토리지

참조 AWS Credentials 가이드는 당신을 얻습니다 AccessKeyID 그리고 SecretAccessKey.

./mc config host add s3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v4

예제 - Google 클라우드 스토리지

참조 Google Credentials Guide 당신을 얻으라 AccessKeyID 그리고 SecretAccessKey.

./mc config host add gcs  https://storage.googleapis.com BKIKJAA5BMMU2RHO6IBB V8f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v2

에 minio 스토리지 서버 또는 아마존 S3 또는 당신의 구글 클라우드 스토리지 내가 만든 것과 같은 냄비를 만들기 위해서 expressffmpegvip.

동기화 디렉토리를 설정하고 나중에 작동합니다.예를 들어, 내 네 개의 스토리지 서버는 모두 고급 버전 스마트 설치되어 있습니다 클라우드 트랜스코딩 시스템은 그때 세그먼트 분할 카테고리가 있어야 합니다 /www/express-ffmpeg/public/videos.

./mc mirror -w --older-than 1h /www/express-ffmpeg/public/videos minio/expressffmpegvip &

위의 명령 라인은 현지 동기화를 의미합니다 /www/express-ffmpeg/public/videos 내부의 내용, 그리고 지속적으로이 폴더 내부에있는 변화를 모니터링, 자동으로 동기화 내 minio 서버 위에 저장 expressffmpegvip 냄비에, 그리고 단지 1 시간 전에 동기화 된 콘텐츠를 설정.

왜 1 시간 전에 설정했는지, 왜 그냥 세그먼트 분할 내용이 나타나고 있다 m3u8 이 시점에서 스토리지 서버에 직접 동기화됩니다 M3U8 내부에 하나밖에 없습니다 TS 기록, 그래서 지연을 설정하면 동기화가 더 잘 진행됩니다.

여기서, 여러 가지 클라우드 트랜스코딩 서버, 저장소와 일치하거나 재생 서버의 분산 구조가 완료되었습니다.