ccp4 cloud
webベースで解析が行えるそうな. 結果表示もいいみたい. それをccp4側のクラウドではなくオンプレミスで用意するお話
オンプレミスの作り方 https://cloud.ccp4.ac.uk/manuals/html-dev/setup.html
ドキュメントhttps://cloud.ccp4.ac.uk/manuals/html-tutorials/index.html,
使い方とか https://www.youtube.com/watch?app=desktop&v=eGlrbLtPlss(youtube)
チュートリアル https://cloud.ccp4.ac.uk/manuals/html-tutorials/index.html
構築対象の計算機
[root@rockylinux ~]# cat /etc/redhat-release
Rocky Linux release 8.8 (Green Obsidian)
[root@rockylinux ~]#
SELinuxは無効にするか「httpd_can_network_connect」を有効にします
[root@rockylinux ~]# getsebool httpd_can_network_connect
httpd_can_network_connect --> on
[root@rockylinux ~]# setsebool -P httpd_can_network_connect 1
そしてfirewallとしては80/tcpを通しておきます
[root@rockylinux ~]# firewall-cmd --add-service=http --zone=public --permanent
[root@rockylinux ~]# firewall-cmd --reload
[root@rockylinux ~]# cd /apps/
[root@rockylinux apps]# tar xf /Public/em/ccp4-8.0.015-linux64.tar.gz
[root@rockylinux apps]# ./ccp4-8.0/BINARY.setup
:
Do you accept the terms of the license? y/n [n] y
:
[root@rockylinux apps]# source /apps/ccp4-8.0/bin/ccp4.setup-sh
[root@rockylinux apps]# ./ccp4-8.0/bin/ccp4um -m 99
機能的にはFE(フロントエンド),NC(NumberCrunchers)の2つの機能が存在していて、別途作成したユーザ(ccp4-cloud)で稼働させる.
NCは複数用意できるようですが、ここでは1つで行います.
必要なソースコードを取得して展開します.
[root@rockylinux ~]# useradd ccp4-cloud
[root@rockylinux ~]# cd /apps/src/
[root@rockylinux src]# curl http://ccp4serv6.rc-harwell.ac.uk/jscofe-dev/ccp4cloud-setup.tar.gz > ccp4cloud-setup.tar.gz
[root@rockylinux src]# ls -l
total 12
-rw-r--r--. 1 root root 9941 Nov 27 00:59 ccp4cloud-setup.tar.gz
[root@rockylinux src]# tar xf ccp4cloud-setup.tar.gz
[root@rockylinux src]# cd ccp4cloud-setup
[root@rockylinux ccp4cloud-setup]#
[root@rockylinux ccp4cloud-setup]# ls -l
total 8
drwxr-xr-x. 4 503 games 4096 Nov 27 01:07 FE
drwxr-xr-x. 5 503 games 4096 May 15 2022 NC
[root@rockylinux ccp4cloud-setup]#
アプリの配置は
/apps/ccp4-8.0
/ccp4-cloud/FC(ccp4-cloud,rw)
/NC(ccp4-cloud,rw)
/disk1/{users,projects}
/images
/pdb
/data
/tutorial
/job-state <-- ユーザ ccp4-cloud がrw
な感じで.
[root@rockylinux ccp4cloud-setup]# mkdir /apps/ccp4-cloud
[root@rockylinux ccp4cloud-setup]# cp -r FE /apps/ccp4-cloud/
[root@rockylinux ccp4cloud-setup]# cp -r NC /apps/ccp4-cloud/
[root@rockylinux ccp4cloud-setup]# chown -R ccp4-cloud. /apps/ccp4-cloud/{FE,NC}
[root@rockylinux ccp4cloud-setup]# mkdir /apps/ccp4-cloud/{images,pdb,data,tutorial,job_safe}
[root@rockylinux ccp4cloud-setup]# mkdir -p /apps/ccp4-cloud/disk1/{users,projects}
[root@rockylinux ccp4cloud-setup]# chown -R ccp4-cloud. /apps/ccp4-cloud/job_safe/ /apps/ccp4-cloud/disk1/
設定ファイルを調整します 参照ccp4/cloud/config
機構的には apache で受け取ってProxyPassを使ってユーザ(ccp4-cloud)で稼働しているnodeプロセスにつなげます.
っでシステムにhttpdを入れます
[root@rockylinux ~]# dnf install httpd mod_proxy_html
[root@rockylinux ~]# cp /apps/src/ccp4cloud-setup/FE/etc/apache2/sites-enabled/ccp4cloud.conf /etc/httpd/conf.d/
[root@rockylinux ~]# vi /etc/httpd/conf.d/ccp4cloud.conf
<Proxy http://127.0.0.1:8081/*>
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass /ccp4cloud http://localhost:8081
SetOutputFilter INFLATE;proxy-html;DEFLATE
ProxyHTMLURLMap http://localhost:8081 /ccp4cloud
LogLevel Info
ProxyPassReverse /ccp4cloud http://localhost:8081
[root@rockylinux ~]#
っで起動
FEとNCはユーザ(ccp4-cloud)権限で稼働させます.
[root@rockylinux ~]# su - ccp4-cloud
[ccp4-cloud@rockylinux ~]$
[ccp4-cloud@rockylinux ~]$ /apps/ccp4-cloud/NC/start-nc.sh
[ccp4-cloud@rockylinux ~]$ /apps/ccp4-cloud/FE/start-fe.sh
[ccp4-cloud@rockylinux ~]$ exit
[root@rockylinux ~]#
[root@rockylinux ~]# systemctl start httpd
NCのログを確認
[root@rockylinux ~]# ls -l /apps/ccp4-cloud/NC/logs/
total 4
-rw-rw-r--. 1 ccp4-cloud ccp4-cloud 0 Dec 17 02:26 node_nc.err
-rw-rw-r--. 1 ccp4-cloud ccp4-cloud 540 Dec 17 02:26 node_nc.log
[root@rockylinux ~]#
次にFEの確認
[root@rockylinux ~]# ls -l /apps/ccp4-cloud/FE/logs/
total 4
-rw-rw-r--. 1 ccp4-cloud ccp4-cloud 0 Dec 17 02:26 node_fe.err
-rw-rw-r--. 1 ccp4-cloud ccp4-cloud 316 Dec 17 02:26 node_fe.log
[root@rockylinux ~]#
FEとNCはnodeで動いているのでそれも確認します
[root@rockylinux ~]# lsof -i -P
:
node 42383 ccp4-cloud 19u IPv4 96928 0t0 TCP localhost:8083 (LISTEN)
node 42862 ccp4-cloud 19u IPv4 100300 0t0 TCP localhost:8081 (LISTEN)
:
[root@rockylinux ~]# curl http://localhost:8081/whoareyou
CCP4 Cloud FE 1.7.016 [27.09.2023] CCP4-8.0.016 active
[root@rockylinux ~]#
[root@rockylinux ~]# curl http://localhost:8083/whoareyou
CCP4 Cloud NC-0 (nc-1) 1.7.016 [27.09.2023] 0
[root@rockylinux ~]#
[root@rockylinux ~]# curl http://rockylinux/ccp4cloud/whoareyou
CCP4 Cloud FE 1.7.016 [27.09.2023] CCP4-8.0.016 active
[root@rockylinux ~]#
これで問題ないようなのでブラウザからアクセスしてみます
っで規定で用意されているアカウントでログインします. ログイン名は「devel」でパスワードも同じく「devel」です.
ccp4へのフィードバックをするかしないかを定めたり、新規のプロジェクトらをはじめに作る.
ユーザ「devel」以外にも管理者アカウント「admin」も用意するそうな. っで
[root@rockylinux ~]# su - ccp4-cloud
[ccp4-cloud@rockylinux ~]$ cp /apps/ccp4-cloud/disk1/users/devel.user /apps/ccp4-cloud/disk1/users/admin.user
[ccp4-cloud@rockylinux ~]$ cp -r /apps/ccp4-cloud/disk1/projects/devel.projects /apps/ccp4-cloud/disk1/projects/admin.projects
っで「/apps/ccp4-cloud/disk1/users/admin.user」に変更を加えます. roleがあるのに注目かな
|
これでアカウント「admin」、パスワードはユーザ「devel」のパスワードを継承しているので変更した値を入れてログインします
そうするとこんな画面になります