← 記事一覧に戻る
ブログ

複数台クラウドトランスコードサーバーは、一つのストレージに合致するか再生サーバーの分散構造を実現

この教科書は純粋な版に適用できますtheoneffmpeg高度な知能にも引用できますクラウドトランスコード express-ffmpeg-vip上に。必要に応じて、この分布式の構造を自分で作り、負荷バランスをとるか、低価格の高配達機械を利用できるトランスコード低配布大型ハードディスクで提供される高帯域幅再生分散的な構造です。

原則

mongodb最初から設計されたのは、分布した構造に使用されるデータベースであり、自動的に生成されますOBJECTID重要なのは、これIDはい5d6de52360e715be825959ddこのような24位の英語と数字で構成されており、ここに持っている情報はタイムタップ、サーバーがありますIDだから、このOBJECTID絶対にユニークで、それぞれの機械が同時に生成されることも異なりますので、存在しないでしょうID紛争の状況では、今日のこの分散式構造の教科書が現れました。

撮影

ステップ

第一歩、 でトランスコードマシン1〜4に純粋版をインストールtheoneffmpegあるいは賢いクラウドトランスコード express-ffmpeg-vipシステムです。すべてのインストールディレクトリを同じように設定する、例えば私がここに設定したインストーリングディレクターは/www/express-ffmpeg。

ステップ2、 各台でトランスコードマシンでダウンロードmcクライアントツール、このツールはアマゾンに接続できるS3,minioでgoogle クラウドストレージ。

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

第三段階、 サーバーに保存するか、それとも再生サーバーの上に設置MINIOシステム、minioシステムは、分散型のオブジェクトストレージシステムであり、サーバーを瞬間的にオブゲットストレジングサーバーに変えることができます。

第4ステップ、 でトランスコードサーバーは同期プロセスを設定し、自動的にすべてのセグメント分割あるいは後で増加するセグメント分割サーバーまたはオブジェクトのストレージに同期します。自立しない場合MINIOストレージサーバー(すなわち第3ステップ)は、Amazonでも利用できますS3あるいはグーグルクラウドストレージ同じ効果も。

例:ミニオクラウドストレージ

からMinIOサービス取得URL、access keyでsecret key。

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

例:Amazon 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もしくはあなたのGoogle クラウドストレージボールを作るのは、私が作ったようなものですexpressffmpegvip。

同期ディレクトリを設定し、後部で動作します。例えば、私の4つのストレージサーバーがインストールされた高度なバージョンのスマートですクラウドトランスコードシステム、それでセグメント分割ディレクトリは必ず/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内側に1つしかないTS記録するため、遅延を設定すると同期がより良く実行されます。

これまで、いくつかのクラウドトランスコードサーバーは、ストレージに合致するか再生サーバーの分散構造が完成しました。