Tag Archives: Linux

録画サーバ構築 PX-Q3PE + Mirakurun 検証編

コンセプトが非常に素晴らしいMirakurunサーバ、自分の想定している使い方に合わせていくには多少の改造は必要そうだけど、チューナーサーバと録画サーバを分離してくれたことは非常にありがたい。若干、Chinachuで使うことを前提とした構造に思えるので、もっと汎用的な位置付けのものになってくれると尚嬉しい。それでもPX-Q3PEについて言えば、OSを限定するが故に仮想化したいチューナー側と、仮想サーバが苦手とする録画処理を分離できるのだから、最強のソリューションと言っても過言ではない。... 続きを読む

録画サーバ構築 PX-Q3PE + Mirakurun 導入編

いい加減手離れかなあと思っていた録画サーバ。他にも作りたいものはいっぱいあるのに、何故かもやもやがやまず、ついつい触ってしまう。大抵は頭の中で改善される環境がぼんやり思い浮かんでいるのに、それを具体化できていなかったりするから。という訳で、きちんと頭の中の課題を整理してみる。PX-Q3PEはドライバの関係でCentOS6系に限定されるが、我が家では物理OSにCentOS7を使いたい。しかし、PX-Q3PEとKVM上で使うとI/O時にノイズが入ってしまう。どうすればよいか。... 続きを読む

IDCFクラウド openvpn による LAN to LAN 接続

IDCFクラウドで不意の障害に見舞われることが増え始めたので、もう少しまともな運用を考える。たまたま自分でアクセスしたときに障害に気付くような状況をまずは改善する。IDCFクラウドのリソースはケチケチで運用しているので、自宅のサーバからクラウド側のサーバを監視するのが理想的。できればウェブ系の監視だけでなく、サーバごとのリソースウォッチも行いたいので、自宅から個々のサーバ、あるいはそのサーバ内のコンテナにアクセスできるように設定したい。そこでVPNの導入を検討してみる。... 続きを読む

録画サーバ構築 epgrec UNA トランスコード設定

仮想サーバをやめて、やっと安定的な録画体制が築けた。長らく先送りとなっていた、録画後処理の自動化を進めていく。録画し終わったデータはTSファイルとして記録される。これを保管および視聴しやすいデータに自動で作り変えたい。検証してきた処理はCPUのハードウェアエンコードを使ったQSVエンコードとcomskipを使ったCMチャプター処理。また、カーナビ用の動画データもついでに自動生成するが、こちらは更に小さいデータでよいのと、うちのカーナビがチャプターあると正しく動作しないのでチャプターなしで生成する。後処理としては以下のような流れを想定している。... 続きを読む

IDCFクラウド wordpress 障害対応

今までVPSやGMOクラウド時代に、wordpress運用で障害らしい障害は起こしたことなかった。サーバ運用が硬直的だったので大きな変更を行えなかったというのも理由の1つではあるが。IDCFクラウドへの移行後は、vmwareノード上にlxcコンテナを作成して、そのコンテナ上でwordpressを運用している。更にwordpressのphp部分はGlusterFSで、データ部分はMariaDBで2台を同期している。これだけ構成を複雑化させてしまったせいかもしれないが、遂にwebサーバにて予期しない障害が発生した。... 続きを読む

録画サーバ構築 PX-Q3PE ノイズ対策完結編

気が付けば本当に1年以上もの間、録画サーバの構築に時間を割いてきた。他にもやりたいことが多い中で、これだけ時間かけるのどうなんだろうと思いつつ。その中でも最も時間を使っているのが、録画データのブロックノイズ対策。今までも筐体変えたり、受信感度調整したり、BIOS設定を網羅的に試したり、あらゆる可能性を調べてきた。中でもストレージのノイズに対する影響は大きく、別サーバにあるGlusterFSに書き出す形を取ることで、かなりノイズを減らすことができた。一見、ほぼノイズはないくらいなんだけど、それでも1時間くらい見ていると数回ブロックノイズが発生してしまう。... 続きを読む

録画サーバ構築 comskip で CMスキップ

録画サーバ構築に関連する要素技術も大分押さえられてきた。あとはCM処理をどうするか検討する。市販のレコーダーになるべく機能を寄せるには、やはりCM前後にチャプターを入れたい。録画ファイルのCM位置を検出するコマンドとしてcomskipというものがあるようだ。このコマンドはLinuxにも移植されていて、CentOS7ならnux-dextopリポジトリからyum installできる。ただし、ffmpegが2系でないとインストール出来ないので注意。あとで使うことになるMP4Boxもインストールしておく。以下の通り。... 続きを読む

Seagate Archive Disk 8TB ST8000AS0002 レビュー

ここ数年、スケールアウトで逃げ続けたディスク容量問題。中心的に使ってきた3TBと昨今のSATAディスク最大容量との乖離も大きくなってきたので、いい加減8TBにスケールアップを行った。SeagateのアーカイブディスクST8000AS0002という製品。大きなファイル用途とのことで、OS領域などには向かないらしい。このディスクを迎えるに当たって、予めGlusterFS上にある細かいファイルはアーカイブして固めておいたので、普段使いで違和感を覚えたことはない。特にストレスを感じることもなく、GlusterFSの1ブリックとして立派に働いてくれている。... 続きを読む

録画サーバ構築 CentOS+VirtFS ゲストOS編

PX-Q3PEを使った録画サーバで1番の問題はdisk I/Oという考えに至りつつある。BSはわりときれいに録画できるんだが、地上波の方はdisk I/Oがノイズに影響している可能性が高い。録画領域をGlusterFSのSATAディスクから、OS領域に使っているM.2のSSD領域に移動させることを検討。ホストOSとゲストOSで、それほど大きくないSSDを切り刻むのは出来れば避けたい。ホストOSのファイルシステムをゲストOSに解放するため、VirtFSの設定を行うことにした。前回、ホストOS側の設定が終わったので、今回はゲストOS側の設定を進めていく。... 続きを読む

IDCFクラウド wordpress 複数台構成 構築

wordpressの運用は既に8年近くに渡っているが、まともな複数台運用が実現できていなかった。大したコンテンツではないが、それでもクラウド費用くらいは稼いでくれるので、出来る限りダウンタイムの少ない運用を行いたい。その結果としてwordpressサーバは大胆な停止が行えなくなり、構造変更がまともに出来ず、古臭い構成に成り下がってしまう。クラウドに移行した一番のモチベーションは、複数台構成にすることで頻繁に更新出来る環境を維持したかったからだ。... 続きを読む

録画サーバ構築 CentOS+VirtFS ホストOS編

SH170R8+PX-Q3PEの構成で大分安定的な録画環境が構築できてきた。録画品質の1番の敵はどうやらディスクI/Oの衝突。特にSATAだと顕著なのでSSDが望ましい。なるべくディスクI/Oを減らしたいところだが、PX-Q3PEがCentOS6限定、QSVがCentOS7.2推奨となっているため、録画サーバからエンコードサーバに録画データを引き渡す必要がある。以前はこれをGlusterFS上でやり取りしていたのだが、GlusterFSはSATAで組んでいるのでノイズが入ってしまう。録画先のデバイスは容量をやりくりしてローカルのSSDを割り当てたい。... 続きを読む

Seagate Archive Disk 8TB ST8000AS0002 購入

自宅で管理しているデータ容量は既に6TBを超えた。はっきり言って必要なデータがどれだけあるかと言われれば疑問だが、容量がやばくなるまでは整理も億劫だし。録画サーバが徐々に本格稼働に移りつつあり、そこから生み出される録画データも容量を増やす一因。TSファイルからmp4を自動生成しているので、消せるっちゃ消せるんだけど、半年分とか1年分くらいは残し続けてもいいような運用にしたい。割と早いスピードで1TBくらいを食い潰していくので、ストレージ容量の拡張を検討する。... 続きを読む

DBサーバ 比較 MySQL vs MariaDB 移行編

昔ながらのmaster/slaveでMySQLを運用してきたが、最近は大分考えが変わってきた。少なくとも自分の趣味環境においてはパフォーマンスより運用の利便性を優先しないと作業の生産性が改善しない。MySQLにおいてmaster/slave構成を取ってきたのは、趣味レベルにおいてはわずかでしかない性能を気にしての事。GMOクラウドからIDCFクラウドに引っ越して内部通信品質も大きく改善したので、今回はwordpressのDBをマルチマスターとなるMariaDBのGalera Clusterに移行してみる。... 続きを読む

録画サーバ構築 SH170R8+PX-Q3PE ノイズ対策編

もともとのSH170R8の位置付けはサーバ用途で購入したZBOX CI520+外付けディスクアレイと録画サーバ用途として購入したSH67H3を統合する事。GlusterFSとしての動作は特に問題なかったが、PX-Q3PEでの録画には何故かノイズが多かったので、SH67H3での運用に切り戻していた。そのときはCentOS7をkernel4系に上げていたので、それが原因かもと考えた。最近やっと、SH170R8でもCentOS7.2の標準kernelで構築できるようになったので、再び録画サーバとしての機能を移植してみる。... 続きを読む

構成管理ツール比較 chef zero vs ansible

もともとchef serverのよる構成管理を行っていたが、よりシンプルな仕組みにしたかったのでansibleに移行した。ansibleは処理も軽く、コードも構成もシンプルで気に入っていたのだが、難しい処理を扱い始めてくると表現力に物足りなさを感じてしまった。具体的には、素のpythonを書けないことのストレスと、pythonでの構造体操作がperlやrubyに比べるとやりづらいという点。その手間も相まって、Jinja2でのtemplate定義に悩むことが多かった。... 続きを読む

IDCFクラウド 仮想ブリッジ ネットワーク問題

今までも何度か触れてきた、IDCFクラウド環境のネットワーク問題。CentOS7インスタンスにLXCコンテナを作成して、そのコンテナを仮想ブリッジ経由でネットワークに繋げている。しかし、この仮想ブリッジ内のLXCコンテナがネットワーク的に不安定。例えばリモートのs3fsをマウントしようとするとコンテナが応答不能になってしまったり、別ノードのLXCコンテナとkeepalivedによるvrrp通信をさせようとすると応答不能になってしまったり。また、コンテナ再起動すると、しばらく外部と通信出来なくなるので、コンテナで複雑なことをやるのは二の足を踏んでいた。... 続きを読む

録画サーバ構築 QSVエンコード Skylake+Linux編

今更ながらshuttleのSH170R8機でCentOS7.2の標準インストールに成功したので、skylake CPUでのQSV検証を進める。skylakeに対応したMedia Server Studio 2017がIntelより数ヶ月前にリリース済み。今回のMSSはCentOS7.2のkernelを推奨しているので、このディストリビューションであればインストールは容易。DLしたMSSを以下のようにインストールして再起動。... 続きを読む

IDCFクラウド DNS冗長化 keepalived編

中外共用のbindをどのように冗長化させるか。前回、nginxのudp proxyを使ってみたが、期待していたproxy_protocolの設定がudpだと働かずに断念。別の方法を考える。bindの前段でロードバランスさせてしまうと、どうしても接続元がロードバランスするサーバになってしまうので、接続元によるzoneの切り替えが出来なくなってしまう。やはりbindそのものをネット上にむき出しにするのが最もシンプル。その状態でどのように冗長化を実現するのか。もうVIPによるフェールオーバくらいしかないか。うん?... 続きを読む

録画サーバ構築 Skylake+CentOS 再検証編

初めて購入したSkylake機にCentOSがインストールができず、それ以降インストールできないものと思い込んでいたが、CentOS6は普通にインストールできたよというありがたいコメントを頂いた。確認したのはCentOS7インストーラの起動失敗だけだったので、問題の特定も含めていろいろ検証し直す事に。以前、インストールに失敗した筐体はshuttleのSh170R8で、既に2台目も購入してある。1台目も2台目も同じサービスが提供できるように作ってあるが、一応マスターは1号機なので、新規に購入した方の2号機で検証を進める。... 続きを読む

IDCFクラウド DNS冗長化 nginx編

中外の出し分けをするbindをどのように冗長化させるかという話。LVSを使うと接続ソースが全てLVSサーバになってしまうため、振り分けも2系統、bind側のIPアドレスも2系統にしてmatch-destinationsで出し分けるしかなかった。もちろんこれで期待した動作は実現できるんだけど構造が複雑なのが不満。もっとシンプルな構成で実現できないかを模索する中で、改めてnginxによるtcp/udp proxyを検討してみる事にした。... 続きを読む