AWS Thinkbox Deadlineを軽率にインストールして検証したかった

# これはなに？
自宅環境（Windows10）で軽率に1PCにDeadlineを全部入れて遊びたい人向けのインストールガイド

# 事の発端
検証と学習がしたかったのでドキュメントを見ながら自宅のPCにDeadlineをインストールしていたものの、構築でコケてインターネットの海で漂流（Twitter）していたところに[神](https://twitter.com/d_yagi)
が降臨した。
<blockquote class="twitter-tweet" data-partner="tweetdeck"><p lang="ja" dir="ltr">Repositoryのインストーラの起動時に最初に表示されるこのウインドウで他のPCからアクセスできる共有のパス入れればOKです。<br>その後各WorkerPCでDeadlineClientインストールするときもこのパス入力すれば繋がります。 <a href="https://t.co/aZTa5USCBw">pic.twitter.com/aZTa5USCBw</a></p>&mdash; 🍖🍶🍣💨💨💨🐐 (@d_yagi) <a href="https://twitter.com/d_yagi/status/1554044906385002496?ref_src=twsrc%5Etfw">August 1, 2022</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
インストール手順が画像付きで細かにぶら下がっているためこちらを追っていただいてもOKです。Qlitaの記事は親切に教えて頂いたd_yagiさんの許可のもとに纏めてあります。ありがとうございます。

# Deadlineって何？
レンダーファーム向けの管理ソフトウェア。
Deadlineでレンダリングなどのジョブを投げると、Deadlineがインストールされている他のPCでレンダリングを分散して行なうなどしてくれます。
Deadline Workerと呼ばれるアプリケーションが立ち上がっているPCだけが計算に参加するため、デザイナー・アーティストが使用中の場合は参加させず、帰宅した後にWorkerを立ち上げて夜中にレンダリングをするなどといった使い方も可能です。
その他にもPythonで特定の処理だけ走らせたり、特定の処理が完了したら別の処理を開始するといった設定なども出来るようです（筆者の学習が追いついてないのでとてもふわっとしてる）。
AWSでインスタンス立ててレンダリング走らせたりもできるが今回はこちらは扱いません（まだ勉強してないので）。

## Deadlineアーキテクチャ図
[画像元](https://twitter.com/d_yagi/status/1554062663134883844?s=20&t=WqPeG8GUjg0Ughof3lCG0Q)
![architecture.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/33a6d517-9c89-1c9a-63b9-74fb03410cc0.png)

## Deadline今なら無料！学ぶしかない！
2022/08/02 Deadline 10.1.23以降のライセンスが無料になりました
https://aws.amazon.com/jp/blogs/media/aws-thinkbox-products-now-available-free-of-charge/
以前までは2ライセンスまで無料→10ライセンスまで無料→今回完全に無料になった形です。AWSでレンダリングしてもらうのを前提としたビジネスモデルに変わった感じでしょうか。

# インストール手順
以前はAWSアカウントは必要なかったのですがどうやら2022/08/02の無料化でAWSアカウントが必須になったようです。それにともなってインストーラーにも変更が入ったようです。

## 1.AWSへログイン
Download Deadlineに飛ぶとAWSのアカウントログインを求められるのでログインorアカウント作成をします。https://www.awsthinkbox.com/deadline
今回は1つのPCに必要なものをすべてインストールする構成のため料金はかかりません。**AWSアカウント作成には電話番号・住所・メールアドレス・クレジットカード情報の登録が必須**です。AWSアカウント作成は入力フォームに沿って各情報を登録するだけなのでここでは説明を省きます。

## 2.AWSからDeadlineをダウンロード
ログインに成功したらログイン状態のまま再度こちらからDownload Deadlineに飛ぶと早いです。
https://www.awsthinkbox.com/deadline

もしくは左上の検索フォームにNimble Studioを入力してサービス一覧のNimble Studioを選択
![aws.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/22a784a2-2461-28a2-b1ff-5639636aff89.png)

一番下関連アプリケーションのAWS Thinkobox softwareからDownloadを選択
![aws2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/a3c1bb4d-24b8-52f1-af9e-a120a96921b0.png)

DeadlineのDownloadを選択![aws3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/fd747e61-f4c7-c24c-8a73-737880882b9f.png)
Deadline-version-windows-installers.zipをダウンロードします。
![download.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/8a70d8d2-78e8-0a89-7cc7-e396d407672d.jpeg)

## 3.DeadlineRepositoryのインストール
ダウンロードした中にDeadlineRepositoryのインストーラーが入っているためまずはこちらを起動してインストールします。
![installer.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/977ce3d0-040c-951d-806d-aa5b8e7c0570.jpeg)

RepositoryはではどのPCからでも（Linux, Windows, Mac問わず）アクセスできる必要があります。NASなどがあれば楽ですが無い場合はデフォルトの`C:\DeadlineRepository10`で大丈夫です。後ほどClientをインストールする際にここにインストールしたRepositoryを参照する必要があります。

:::note warn 
Cドライブ直下だと権限周りの問題で後の作業でClientからRepositoryを上手く参照出来ずエラーが出る場合がありました。そういった場合は他の場所を試してください。 
:::

:::note warn 
他のPCのストレージを参照する場合はUNCパスで記述する必要があります。
例：D:\DL-Repositoryを作って共有かけて他PCからRepositoryを参照する場合
\\PCname\DL-Repository
:::


![repository.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/3a8402d0-a755-15f0-7009-3bcd2d0137c8.jpeg)

DBはデフォルトのMongoDB。
![databasetype.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/37c2c76a-8666-5665-bbea-16dba2879477.jpeg)

大体の人が新規でMongoDBをインストールする（はず）のでInstall a nw MongDB database on this machine?を選択。
![newmonbodb.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/347b1066-eadf-63a5-6bb8-d140a91d5aab.jpeg)

MongoDBをダウンロードするためDownload MongoDB。
![monbodbinstallationtype.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/26d982a9-bd12-f5a1-23d1-2355cdd19a06.jpeg)

ライセンスに同意して次へ。
![lisenceagreement.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/99d4513d-2b9a-d03b-4084-a320e47c5ea9.jpeg)

MongoDBをインストールする場所を選択します。今回は1PCに全て入れるためデフォルトで次へ。先述のようにこのMongoDBを入れたPCが立ち上がっていないとDeadlineは使えないです。
![monbodbinstallation.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/20880982-c102-fca2-1397-9ca46b09e553.png)

MongoDB SecurirtyではDeadline Clientから繋ぐ際に認証設定をします。今回は特にパスワードを設定せずに先に進めます。
![MongoDBsecurity.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/76a72d9c-ddbc-738e-1e34-b70cf74ca9ae.jpeg)

以前のDeadlineの設定をインポートするかどうか尋ねられます。今回は新規作成のためチェックを外して次へ。この設定はインストール完了後にも可能なようです。
![importsettings.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/ce97c1f2-576a-7737-4d74-2a923fbe1c59.jpeg)

## Deadline Clientのインストール
![deadlinesetupdirectory.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/8d029b8d-2f89-678c-f408-8ef9fd8eec92.jpeg)

Clientを選択する。
![selectioninstalltype.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/33603103-358c-e0e6-1b91-11e909a3ccb9.jpeg)

今回はローカルで完結するためDirect Connectionを選択。
![directconnection.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/41b5410d-9372-f1a9-64f4-8b675b0734ba.jpeg)

先程インストールしたRepositoryを参照します。ここでRepositoryを参照しなかった場合でも後ほどDeadlineを立ち上げた時に再度設定可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/0bf0c923-94e6-7a72-1079-67a2fb357d64.png)

Repositoryインストール時にパスワードの設定をしなかったため、空欄で次へ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/3b4381ef-5d04-7139-9dd4-611b030fddb0.png)

Deadline Workerを立ち上げるかどうかの設定を尋ねられます。ここはどちらでもいいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/ad0bb50f-23d2-371b-39b2-879b50fb0760.png)

デフォルトのまま次へ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/8e7d76a0-0077-c4f8-ce30-5a1be14f9bc9.png)

これで準備は完了です。

# Deadlineが起動できることを確認する

インストールされたDeadline Workerを起動します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/02e19cbe-bc25-4d8d-1539-64c36e640640.png)

Deadline Moniterを起動します。こちらは現在のJOBを監視するアプリケーションです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/02c89775-ddb3-6405-bfaf-170b4df567ff.png)

Workerが立ち上がった状態であればWorkersに自身のPCが表示されます。他のPCも同様にDeadline ClientをインストールしてRepositoryを参照し、Workerを立ち上げればWorkersに表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/2d34a1d9-ce9c-8cb9-4cc8-a913c0d902b6.png)

# DCCツールのSubmit Pluginのインストール
先程インストールしたRepositoryディレクトリにプラグインが入っているのでインストールします。例としてMayaのプラグインをインストールします。
`C:\DeadlineRepository10\submission\Maya\Installers`

Deadline Repositoryを選択。
![deadlinerepository.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/2e666b39-d9ea-aed9-76b6-63f3d7990d1c.png)

デフォルトで次へ。
![user.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/9a735643-208b-c2be-0ce4-4c0a7aa19eed.png)

先程インストールしたClientの場所を尋ねられるので指定して次へ。
![deadlinebin.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/0bb614d0-37ff-ea25-d180-95a2c4731320.png)

これでMayaのプラグインインストールは完了です。
完了すると以下にMelが追加されてます。
`C:\Users\user\Documents\maya\scripts\DeadlineMayaClient.mel`

![deadlinemaya.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/f2708f58-59d0-deca-0545-76e744b4e65b.png)

Mayaを起動するとシェルフにDeadlineが追加されています。
![shelf.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/600bb997-0198-52be-4e22-5b60bbb9cd10.png)

立ち上げるとSubmit Job to Deadlineが立ち上がります。これでJOBが投げれるようになりました。
![job.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128919/7f90ba61-3c8f-35d6-16ff-10ab8affaa10.png)


# 余談
インストールが完了するといい感じの環境変数が追加されてます。
```
DEADLINE_PATH:
C:\Program Files\Thinkbox\Deadline10\bin
```