masterとworkerを一台のマシンで組む場合

cryoSPARCに記載のようにライセンスキーを取得します。
そしてプログラムの入手します。

ここでは「~cryosparc/src/」にプログラムファイルを置いていることを前提します。

下準備

アカウント作成
*自分のアカウントでも構わない

[root@s ~]# useradd -m cryosparc

インストール

個人アカウントで行う場合、まず予めSSD/nvmeなデバイス/scratch<例>にcryoSPARC向けのフォルダを用意する
SSD/nvmeなデバイスがなければ作らなくていい.

[saber@s ~]$ mkdir /scratch/cryosparc_saber

そしてcryoSPARCをインストールする

[saber@s ~]$ mkdir cryoSPARC
[saber@s ~]$ cd cryoSPARC/
[saber@s cryoSPARC]$ tar xf /apps/src/cryosparc_master.tar.gz
[saber@s cryoSPARC]$ tar xf /apps/src/cryosparc_worker.tar.gz
[saber@s cryoSPARC]$ ls -l
total 4
drwxr-xr-x  2 saber em   21 Mar 30 06:49 cryosparc2_worker/
drwxr-xr-x 11 saber em 4096 Mar 30 06:49 cryosparc_master/
drwxr-xr-x  6 saber em  172 Mar 30 06:49 cryosparc_worker/
[saber@s cryoSPARC]$
 
[saber@s cryoSPARC]$ cd cryosparc_master/
 
[saber@s cryosparc_master]$ ls -CF
bin/                    cryosparc_liveapp/   install.py               systemd/
check_install_deps.sh*  cryosparc_webapp/    install.sh*              version
cryosparc_app/          deps_bundle/         patch.py
cryosparc_command/      deps_bundle_hashes/  setup_client_ipython.py
cryosparc_compute/      environment.yml      supervisord.conf
 
[saber@s cryosparc_master]$
[saber@s cryosparc_master]$ ./install.sh  --standalone \
--license xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--worker_path /home/saber/cryoSPARC/cryosparc_worker \
--cudapath /usr/local/cuda-11.2 \
--ssdpath /scratch/cryosparc_saber \
--initial_email saber@fgo \
--initial_password saber \
--initial_username saber \
--initial_firstname Artoria \
--initial_lastname Pendragon 
 
[saber@s cryosparc_master]$

ssdなデバイスがなければ「--ssdpath /scratch/cryosparc_saber」を「--nossd」に置き換える.

上記 install.sh を実行すると下記のような確認画面が表示されます

************ CRYOSPARC SYSTEM: MASTER INSTALLER **************
 
 Installation Settings:
   License ID              : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
   Root Directory          : /home/saber/cryoSPARC/cryosparc_master
   Master Hostname         : s.sybyl.local
   Database Directory      : /home/saber/cryoSPARC/cryosparc_database
   Base HTTP Port Number   : 39000
   Developer Install       : false
   Operating System        : Linux
   Insecure Install        : false
   Standalone Install      : true
   Worker Root Directory   : /home/saber/cryoSPARC/cryosparc_worker
   Initial User Email      : saber@fgo
   Initial User Password   : saber
   Initial User Name       : saber
   Initial First Name      : Artoria
   Initial Last Name       : Pendragon
   CUDA Path               : /usr/local/cuda-11.2
   SSD                     : false
   Version                 : v3.2.0
 
******************************************************************
 
The cryoSPARC System master installation will host a database,
web application, and command layer for cryoSPARC, but will not
perform processing jobs.
 
Please read and confirm the above settings. The cryoSPARC database
will be stored at the database directory which is relative to the
root directory, unless provided as an absolute path.
You can change the database directory now by passing the --dbapth
parameter to this installer, or later via the command line.
 
Are the above settings correct?
1) Yes
2) No
#?

入力値に問題がなければ[1]を入力します。

最後に

 CryoSPARC System master has now been installed.
 Add bin directory to your ~/.bashrc ?
1) Yes
2) No
#?

と問われるが、[1]を入力します

使用する

計算機にログインして使うなら、ブラウザを立ち上げて「http://localhost:39000/」へアクセスする
もし計算機以外からのアクセスならその計算機のport番号39000にアクセスする「http://c.sybyl.local:39000/

計算機を再起動するとwebサービスが止まります.
その際は「cryosparcm start」でwebサービスを上げます. 現状の確認には「cryosparcm status」を実行します

[saber@s ~]$ cryosparcm status
----------------------------------------------------------------------------
CryoSPARC System master node installed at
/home/saber/cryoSPARC/cryosparc_master
Current cryoSPARC version: v3.2.0
----------------------------------------------------------------------------
 
CryoSPARC process status:
 
app                              RUNNING   pid 4948, uptime 0:44:59
app_dev                          STOPPED   Not started
command_core                     RUNNING   pid 4860, uptime 0:45:20
command_rtp                      RUNNING   pid 4895, uptime 0:45:08
command_vis                      RUNNING   pid 4890, uptime 0:45:10
database                         RUNNING   pid 4785, uptime 0:45:24
liveapp                          RUNNING   pid 4966, uptime 0:44:57
liveapp_dev                      STOPPED   Not started
webapp                           RUNNING   pid 4939, uptime 0:45:00
webapp_dev                       STOPPED   Not started
 
----------------------------------------------------------------------------
 
global config variables:
 
export CRYOSPARC_LICENSE_ID="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
export CRYOSPARC_MASTER_HOSTNAME="s.sybyl.local"
export CRYOSPARC_DB_PATH="/home/saber/cryoSPARC/cryosparc_database"
export CRYOSPARC_BASE_PORT=39000
export CRYOSPARC_DEVELOP=false
export CRYOSPARC_INSECURE=false
export CRYOSPARC_CLICK_WRAP=true
 
[saber@s ~]$

webサービスへのログインユーザは一応スタンドアローン運用でも複数用意できますが、
まぁそのユーザでファイルシステムへのアクセス云々はないので別なユーザを作っても微妙かなと...
作るにはcryoSPARC/memo#jdaeba05をご参照ください

他ユーザのcryoSPARCアプリフォルダを丸ごとコピーして使えるか?

例えばユーザ「cryosparc」なるユーザでcryoSPARCのサービスを提供している. そのアプリフォルダを丸ごと自分のホームディレクトリにコピーして使うことは果たしてできるか?
答え: port番号を変更しないのなら動く. なので「移動」はok. だけでコピーは無理. 1台の計算機に複数のcryoSPARCを用意するならport番号を変更して再度インストールが必要みたい.

目下ユーザ cryosparc が cryoSPARC を運用している

[saber@s ~]$ cd ~cryosparc/
[saber@s cryosparc]$ ls -l
合計 20
drwxrwxr-x  2 cryosparc cryosparc   20  3月 30 06:49 cryosparc2_worker
drwxrwxr-x  3 cryosparc cryosparc 8192  4月 26 02:09 cryosparc_database
drwxrwxr-x 14 cryosparc cryosparc 4096  4月 26 02:01 cryosparc_master
drwxrwxr-x  8 cryosparc cryosparc 4096  4月 26 02:01 cryosparc_worker
[saber@s cryosparc]$

プロセスはこんな感じ. それを一旦停止します

[saber@s cryosparc]$ ps -ef |grep cryosparc
cryospa+ 28020     1  0 02:01 ?        00:00:00 python /home1/cryosparc/cryosparc_master/(略
cryospa+ 28022 28020  1 02:01 ?        00:00:05 mongod --dbpath /home1/cryosparc/cryospar(略
cryospa+ 28097 28020  0 02:01 ?        00:00:01 python -c import cryosparc_command.comman(略
 :
[saber@s cryosparc]$ cryosparcm stop

アプリケーション用フォルダ(cryoSPARC)を作ってそのに他のユーザで動いているcryoSPARCアプリ一式をコピーする

[root@s ~]# cd /home1/cryosparc
[root@s cryosparc]# tar cf /tmp/cryosparc.tar ./cryosparc2_worker ./cryosparc_database ./cryosparc_master ./cryosparc_worker
 
[root@s cryosparc]# su - saber
 
[saber@s ~]$ mkdir cryoSPARC
[saber@s ~]$ cd cryoSPARC/
[saber@s cryoSPARC]$ tar xf /tmp/cryosparc.tar

設定ファイルで「CRYOSPARC_DB_PATH」の場所を変更して起動する.

--- ./cryoSPARC/cryosparc_master/config.sh.orig 2021-04-26 03:56:13.083363625 +0900
+++ ./cryoSPARC/cryosparc_master/config.sh      2021-04-26 04:10:35.506459363 +0900
@@ -1,7 +1,7 @@
 
 export CRYOSPARC_LICENSE_ID="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
 export CRYOSPARC_MASTER_HOSTNAME="s.sybyl.local"
-export CRYOSPARC_DB_PATH="/home1/cryosparc/cryosparc_database"
+export CRYOSPARC_DB_PATH="/home/saber/cryoSPARC/cryosparc_database"
 export CRYOSPARC_BASE_PORT=39000
 export CRYOSPARC_DEVELOP=false
 export CRYOSPARC_INSECURE=false

っで起動

[saber@s ~]$ export PATH=/home/saber/cryoSPARC/cryosparc_master/bin:$PATH
 
[saber@s ~]$ cryosparcm start

一応使えるようだが,,,結局port番号を変更できないので新にcryoSPARCをインストールしたほうがいいかな.

一台の計算機に複数のcryoSPARCをインストールする

port番号を変更します. 規定が39000で、別にするなら10位追加する. ここでは 39010 としている.

[illya@s ~]$ mkdir cryoSPARC
[illya@s ~]$ cd cryoSPARC/
[illya@s cryoSPARC]$ tar xf /apps/src/cryosparc_master.tar.gz
[illya@s cryoSPARC]$ tar xf /apps/src/cryosparc_worker.tar.gz
[illya@s cryoSPARC]$ cd cryosparc_master/
[illya@s cryosparc_master]$ ./install.sh  --standalone \
--license xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
--worker_path /home/illya/cryoSPARC/cryosparc_worker/ \
--cudapath /usr/local/cuda-11.2 \
--nossd \
--initial_email illya@fgo \
--initial_password illya \
--initial_username illya \
--initial_firstname Illyasviel  \
--initial_lastname Einzbern \
--port 39010
 
[illya@s cryosparc_master]$

っがライセンスコードが同じだと「Token is invalid. Another cryoSPARC instance is running with the same license ID.」と言われる.
なのでインスタンス毎にライセンスコードは必須のご様子.


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2021-04-26 (月) 05:30:18 (94d)