はじめに
映像系パイプラインツール、DEADLINEを動かすために必要なRepositoryサーバの構築をしたので
そのときの備忘録程度に書こうと思います。(わかりづらくてすいません)
注意)ディレクトリパスは適当に変えています。注意してください。
構成
- サーバ
- VMWare ESXi 6
- CentOS 7.6 (ちなみに8.0でも動いた)
- CPU 4core/MEM 8GB (ただし、メモリは不足したら増やす予定)
- ソフトウェア
- MongoDB 3.4 (ちなみにcentos8で、MongoDB4.3で動いた)
- Deadline10.1.3
- Samba 4.9.1 (client common backend等普通にyumで入ってしまうもの)
導入手順
素材揃える編
注意1) Deadlineでライセンスサーバについて記載していないのは、今回ライセンスサーバはすでにある程です。
注意2) システム要件は行う前に確認してみてください。
注意3) DeadlineのデータはここではDeadline-10.1.3.6-linux-installers.tar
を指す。
VMを立てる
→こちらはわかりやすく書いていらっしゃる方がいますので、こちらを参考にしてみてください。
なお、次の項目は一番最初の初期設定が終わってるものです。
CentOSを設定する
- SSHで、admin権限をもったユーザでサーバに入る(teraterm等で入る。) ※1
- sudoerの設定画面に入る。
[hoge@deadline ~]# visudo
- この場所を見つける`## Allow root to run any commands anywhere
- 3の下に、
ユーザ名 ALL=(ALL) ALL
を入力する -
esc
を押して:wq
で保存終了 - rebootして再起動。
- SSHで再度ログインする
- サーバを最新にする
[hoge@deadline ~]$sudo yum update
- SFTPでアクセスして、
/home/hoge
へMongoDBのデータとDeadlineのデータをアップロードする。
※もしユーザ権限の場合は[hoge@deadline ~]$su -
でrootパスワードを入力すれば大丈夫。[hoge@deadline ~]#
と$ -> #へと変わってるはず。
Deadlineのインストール
- Deadlineのデータがあるところまで、ディレクトリを移動する。
- tarで固まってるため解答する
[hoge@deadline ~]tar -xvf Deadline-10.1.3.6-linux-installers.tar
- 同じディレクトリに次の二つがあることを確認する。
mongodb-linux-x86_64-rhel70-3.4.24.tgz
とDeadlineRepository-10.1.3.6-linux-x64-installer.run
- Deadlineをインストールする。
[hoge@deadline ~]#sudo ./DeadlineRepository-10.1.3.6-linux-x64-installer.run --mode text ----prepackagedDB /home/hoge/mongodb-linux-x86_64-rhel70-3.4.24.tgz
- License Agreementが出てくるので読み進めて、
Y
で進める。 - Repository Installation Directoryの入力画面が出てくるので、表示されてるディレクトリでよければそのまま進める。
-
Set full read/write access for files[Y/n]
と出てくるんのでY
。 - MongoDBのインストールについてきいてくるので、
[1] Install a new MongoDB database on this machine?
にするため1
を入力 -
MongoDB Installation type
を聞かれるので[2]Pre-Packed(.tar .zip)
の2
を入力。 - 場所を聞かれるが、最初に場所を設定しているため間違ってるか確認して、進む
- host等mongoDBに関する情報を聞かれるが、問題がなければそのまま進む。
-
continue installation?
と聞かれるので、Y
でインストール開始。 - ファイアウォールを追加設定する
[hoge@deadline ~]$sudo firewall-cmd --zone=public --add-port=27100/tcp
- ファイアウォールを適用する
[hoge@deadline ~]$sudo firewall-cmd --reload
注意1)基本的に特に何かなければ、デフォルトパラメータで行くほうがいいと思います。
注意2)ここについて、わからなければ次のページをご参考に。
注意3)ポートについては次のところを参照。
sambaをインストール
repositoryには全部のPCがアクセスできないといけないので、sambaをインストール、設定する。
1. インストールコマンドを入れる。[hoge@deadline ~]$ sudo yum install -y samba
2. smb設定をバックアップする [hoge@deadline ~]$sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bk
3. ファイル内に入る。[hoge@deadline ~]$sudo vi /etc/samba/smb.conf
4. 下のsmb.confを参考に設定する。
5. ファイアウォールを追加設定する [hoge@deadline ~]$sudo firewall-cmd --zone=public --add-service=samba
6. ファイアウォールを適用する [hoge@deadline ~]$sudo firewall-cmd --reload
7. レポジトリフォルダに対してselinuxを設定する [hoge@deadline ~]$ sudo semanage fcontext -a -t samba_share_t "/opt/Thinkbox/DeadlineRepository10(/.*)?"
8. レポジトリフォルダに対してselinuxを適用する [hoge@deadline ~]$ sudo restorecon -R /opt/Thinkbox/DeadlineRepository10/*
9. レポジトリフォルダに対して適宜書き込み読み取り権限をつける。(できるだけsambaにユーザ権限作成して作ることをおすすめしたい)
10. 起動する [hoge@deadline ~]$ sudo systemctl start smb
11. 自動起動の設定をする [hoge@deadline ~]$ sudo systemctl enable smb
[global]
workgroup = WORKGROUP
server string = Deadline
netbios name = deadline
security = user
map to guest = bad user
dns proxy = no
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[repository] #これが今回追加したもの(ただしテスト版)
path = /opt/Thinkbox/DeadlineRepository10
browseable = Yes
writable = Yes
guest ok = Yes
read only = No
create mask = 0700
force create mode = 0700
force directory mode = 0700
最終チェック
- selinuxが入ってることを確認
[hoge@deadline ~]$sudo getenforce
->Enforce
でok - レポジトリフォルダのselinuxのコンテクスト確認
[hoge@deadline ~]$sudo ls -Z /opt/Thinkbox/DeadlineRepository10
->samba_share_t:s0
が各フォルダに入ってればok。 - ファイアウォールを適用する
[hoge@deadline ~]$sudo firewall-cmd --reload
- ファイアウォールが設定されてるか確認する
[hoge@deadline ~]$sudo firewall-cmd --list-all
- WindowsやMac等からレポジトリフォルダが開けることを確認する。
- mongoが稼働しているか確認する
[hoge@deadline ~]$ sudo ps -ef | grep mongod
- mongoのポートが受け付けてるか確認する
[hoge@deadline ~]$ sudo ls -of -i:27100
public (active)
省略
services: dhcpv6-client samba ssh
ports: 27100/tcp
省略
root 1543 1 0 14:30 ? 00:00:46 /opt/Thinkbox/DeadlineDatabase10/mongo/application/bin/mongod --config /opt/Thinkbox/DeadlineDatabase10/mongo/data/config.conf
hoge 11327 9106 0 18:55 pts/3 00:00:00 grep --color=auto mongod
mongod 1543 root 11u IPv4 26421 0t0 TCP *:27100 (LISTEN)
mongod 1543 root 12u IPv6 26422 0t0 TCP *:27100 (LISTEN)
あとは、クライアントの設定をするのみ(今回は省略)
トラブルシューティング
クライアント側でのDeadlineのレポジトリ設定するときに
certificationが通らないトラブルに遭遇しました。
もし遭遇した人がいれば、ローカルに証明書を落とした上でクライアントの設定を進めてください。
次からはなぜか、NAS上の証明書からアクセスできます。(解せない)
終わりに
はー。。。windowsだと、こう細かいことしないでも、ぽんぱんぽん、って終わるから楽ですね。(おい。)
ただ、なにがどう動いてるか、CentOSのがわかりやすいのと、何より、負荷が軽い。
windowsの時の半分以下。しかも無料。文句のつけようがない。。。
サーバの管理する側といては、やっぱりなにがどう動いてるのか即わかるCentOSは好きかなぁ。。。
というわけで、サーバ側のセットアップでした!