本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
クラウドnでサーバを構築すると簡単にそのサーバをコピーして新しくサーバを構築できます。
ある程度設定したものをもう一度作り直すのは大変ですが、コピーして必要なところだけ変えていくというのはとってもラクチン。
http://www.cloudn-service.com/faq/1972
今回は映像配信用に構築したサーバをコピーします。映像配信サーバなので配信帯域を必要とします。なので、極力論理的に離れた位置のサーバの方が有利です。そこで異なるリージョンにサーバをコピーします。
<C:異なるリージョンの場合>
例:西日本リージョンにある仮想サーバから、東日本リージョンで複製サーバを作成
【手順(パターンC)】
元仮想サーバのROOTディスクのスナップショットを作成
※スナップショットの作成には少し時間がかかりました。なかなか終わらなかったので、一晩おいてから確認しました。
表示-スナップショット
スナップショットよりテンプレートを作成
(マイテンプレートとして作成される)
※仮想サーバを停止した場合は、直接、ROOTディスクからテンプレートの作成が可能
テンプレートの作成でOSの種類を問われました。Ubuntuである事は覚えていたのですがバージョンは、、、。
バージョンの確認方法
root@Cloudn01:/etc# cat /etc/issue Ubuntu 16.04.4 LTS \n \l
32bitナノか?64bitナノか?
root@Cloudn01:/etc# uname -a Linux Cloudn01 4.4.0-104-generic #127-Ubuntu SMP Mon Dec 11 12:16:42 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
x86_64 と書いてあるので64bitですね。
※テンプレートの作成にも時間がかかります。こちらも30分ほどかかりました。
テンプレートのダウンロードを実施
※テンプレートをダウンロードする際に、.qcow2 という拡張子がつかない状態で
ダウンロードされる場合があるため、その際は .qcow2 をつけるように、ダウン
ロード後にリネームしてください。
※テンプレートをダウンロードする際に、失敗する事象が見つかっております。
もし失敗した場合は、チケットにてカスタマーサポートまでご連絡をお願いいた
します。
※作業が完了するまでお時間がかかりますのでご了承ください。
テンプレートは13.1GBになっていました。
テンプレートを任意の場所にアップロード
(HTTPアクセス可能な場所、またはObjectStorageサービスもご利用可能)
Google Driveにアップしてみましたが、Google DriveのURLリンクはhttpsになるため、テンプレート追加時点でエラーが出ました。
テンプレート追加機能を使い、アップロードしたテンプレートを追加
※作業が完了するまでお時間がかかりますのでご了承ください。
※Google Drive (https://)だと失敗します
それから、http://でダウンロードできる位置にファイルを置いて登録すると、すぐに「テンプレート登録完了」とでますが、実際にはまだ利用できる状態ではありません。
ゾーンIDの下に、テンプレートのコピー、ダウンロードなどの表示が出ていない間はまだ利用できる状態じゃない。私の場合、利用できるようになるまで2時間かかりました。
新仮想サーバを作成する際に、「マイテンプレート」より作成
で、無事に起動しました。最近cloudnは混雑がひどいようなのでcreateに失敗する事もありますが、無事に稼働してます。
これで、東日本リージョン、西日本リージョンに1台ずつ仮想サーバを構築できました。パスワードもすべて同じ!!嬉しい。これは同じ構成のサーバ構築するのにすごい手間を軽減できます。
映像配信サーバへ
コピーしたサーバを映像配信サーバに仕立てます。
ポートを開放します
SSH: 22
RTMP: 1935
HTTP:80
GoAccess:7890
nginxコンフィグファイルrefererなど書き換え
refererで制約かけている部分などipアドレスが変わるので書き換えます。cloudn.hanako.jpから、cloudn0a.hanako.jpに変えたので
location ~ ^/hls/ { valid_referers server_names cloudn.hanako.jp; if ($invalid_referer) { return 403; } }
これから
location ~ ^/hls/ { valid_referers server_names cloudn0a.hanako.jp; if ($invalid_referer) { return 403; } }
といった感じにします。
web playerのコンフィグ変更
URLが変わるので、web playerのコンフィグを変更します。必要に応じてリアルタイム配信ポイントなどもあれ、
# cat jp.html <script src="../hlsjs/hls.min.js"></script> <video id="video" controls width="1280" height="720"></video> <script> if(Hls.isSupported()) { var video = document.getElementById('video'); var hls = new Hls(); hls.loadSource('http://cloudn0a.hanako.jp/hls/stream.m3u8'); hls.attachMedia(video); hls.on(Hls.Events.MANIFEST_PARSED,function() { video.play(); }); } // hls.js is not supported on platforms that do not have Media Source Extensions (MSE) enabled. // When the browser has built-in HLS support (check using `canPlayType`), we can provide an HLS manifest (i.e. .m3u8 URL) directly to the video element throught the `src` property. // This is using the built-in support of the plain video element, without using hls.js. else if (video.canPlayType('application/vnd.apple.mpegurl')) { video.src = 'http://cloudn0a.hanako.jp/hls/stream.m3u8'; video.addEventListener('canplay',function() { video.play(); }); } </script>
nginxコンフィグを書き換えたらリスタートを忘れない
コンフィグを書き換えているのに、リスタートしていないとそりゃうまくいきません。これもはまるポイントになるので忘れないようにします。
# /etc/init.d/nginx restart
テンプレートの保存料金
テンプレートを保存するには、ディスク領域を利用するのでその分お金がかかります。15GBのディスク領域を1か月利用するとおよそ150円ほどの料金が発生します。
私はとっても節約家なのでダウンロードしたテンプレートイメージを別場所で補完し、cloudn上のスナップショット、テンプレートは全て削除しました。
またコピーしなきゃいけなくなったら、ダウンロードしたイメージを2~3時間かけてアップすればいいですし。