mitosearch本番環境構築手順

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
mitosearch本番環境構築手順 [2024/03/29 00:58] 210.137.33.14mitosearch本番環境構築手順 [Unknown date] (現在) – 削除 - 外部編集 (Unknown date) 127.0.0.1
行 1: 行 1:
-# m128mにmitosearch本番サーバを稼働させる手順 
- 
-user2で実行させる 
- 
-まだnodejsをインストールしていなければ 
- 
-``` 
-sudo dnf install nodejs -y 
-``` 
- 
-MitoSearchのインストールおよび起動 
- 
-``` 
-cd /suikou/download9-v251/mitosearch 
-git clone https://github.com/suikoucalender/mitosearch.git 
- 
-cd mitosearch/Mitosearch 
-nano config/config.json 
-#"port": "3004"に変更 devなら3003、本番環境なら3004 
-npm start 
-``` 
- 
-foreverの登録 
- 
-``` 
-sudo npm install -g forever 
- 
-logdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch 
-workdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch/Mitosearch 
-forever start -l $logdir/forever.log -a -o $logdir/out.log -e $logdir/err.log -w --workingDir $workdir --watchDirectory $workdir $workdir/app.js  
-``` 
- 
-起動しているかの確認 
- 
-``` 
-forever list 
- 
-#止めるときはforever listで出てきたpidを引数に 
-forever stop <pid> 
-#もしくは 
-forever stopall 
-``` 
- 
-## foreverをsystemdでOS起動時に自動起動させる 
- 
-``` 
-#/etc/systemd/system/mitosearch.service に下記のファイルを作る 
-[Unit] 
-Description = mitosearch 
-After = netwark.target 
- 
-[Service] 
-Environment=logdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch 
-Environment=workdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch/Mitosearch 
-ExecStart=/usr/local/bin/forever start -a -l ${logdir}/forever.log -o ${logdir}/out.log -e ${logdir}/err.log -w --workingDir ${workdir} --watchDirectory ${workdir} ${workdir}/app.js 
-ExecStop=/usr/local/bin/forever stop ${workdir}/app.js 
-Restart=always 
-RestartSec=10 
-User=user2 
-Environment=PATH=/usr/bin:/usr/local/bin 
-SyslogIdentifier=node-server 
-Type=forking 
-Environment=NODE_ENV=production 
- 
-[Install] 
-WantedBy=multi-user.target 
-``` 
- 
-``` 
-systemctl daemon-reload #必要に応じて 
-systemctl start mitosearch 
-systemctl status mitosearch 
-systemctl enable mitosearch 
- 
-#起動しているかの直接の確認は 
-lsof -i:3004 #でポート番号から調べられる 
-``` 
- 
-# mitosearch_devのセットアップ 
- 
-``` 
-#user2で 
-cd /suikou/download9-v251/mitosearch 
-git clone https://github.com/suikoucalender/mitosearch.git mitosearch_dev 
- 
-#yoshitakeやsuikouユーザで 
-sudo nano /etc/systemd/system/mitosearch_dev.service 
-``` 
- 
-``` 
-[Unit] 
-Description = mitosearch_dev 
-After = netwark.target 
- 
-[Service] 
-Environment=logdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch_dev 
-Environment=workdir=/data/suikou-m2/download9-v251/mitosearch/mitosearch_dev/Mitosearch 
-ExecStart=/usr/local/bin/forever start -a -l ${logdir}/forever.log -o ${logdir}/out.log -e ${logdir}/err.log -w --workingDir ${workdir} --watchDirectory ${workdir} ${workdir}/app.js 
-ExecStop=/usr/local/bin/forever stop ${workdir}/app.js 
-Restart=always 
-RestartSec=10 
-User=user2 
-Environment=PATH=/usr/bin:/usr/local/bin 
-SyslogIdentifier=node-server 
-Type=forking 
-Environment=NODE_ENV=production 
- 
-[Install] 
-WantedBy=multi-user.target 
-``` 
- 
-``` 
-sudo systemctl enable --now mitosearch_dev 
-``` 
- 
-# metasearchのセットアップ 
- 
-``` 
-#user2で 
-mkdir /suikou/download9-v251/metasearch 
-cd /suikou/download9-v251/metasearch 
-git clone https://github.com/suikoucalender/metasearch.git 
-cd metasearch/metasearch 
-npm install 
-nano config/config.json 
-#passを"pass": "uE7dOLCbHi" 
- 
-cd script 
-wget https://github.com/suikoucalender/metasearch/releases/download/0.1/krona_v2.7.1_cv1.sif 
-wget https://github.com/suikoucalender/metasearch/releases/download/0.1/python3_env_mako_installed.sif 
-wget https://github.com/suikoucalender/mitosearch_related_files/releases/download/0.01/ncbi_blast_2.13.0.sif 
- 
-mkdir ../data 
-cd ../data 
-ln -s /suikou/download9-v251/backup-m50v251n3/usr/local/yoshitake/* . 
- 
-#yoshitakeやsuikouユーザで 
-sudo nano /etc/systemd/system/metasearch.service 
-``` 
- 
-``` 
-[Unit] 
-Description = metasearch 
-After = netwark.target 
- 
-[Service] 
-Environment=logdir=/suikou/download9-v251/metasearch/metasearch 
-Environment=workdir=/suikou/download9-v251/metasearch/metasearch/metasearch 
-ExecStart=/usr/local/bin/forever start -a -l ${logdir}/forever.log -o ${logdir}/out.log -e ${logdir}/err.log -w --workingDir ${workdir} --watchDirectory ${workdir} ${workdir}/app.js 
-ExecStop=/usr/local/bin/forever stop ${workdir}/app.js 
-Restart=always 
-RestartSec=10 
-User=user2 
-Environment=PATH=/usr/bin:/usr/local/bin 
-SyslogIdentifier=node-server 
-Type=forking 
-Environment=NODE_ENV=production 
- 
-[Install] 
-WantedBy=multi-user.target 
-``` 
- 
-``` 
-sudo systemctl enable --now metasearch 
-``` 
- 
- 
-# metasearch_devのセットアップ 
- 
-``` 
-#user2で 
-mkdir /suikou/download9-v251/metasearch 
-cd /suikou/download9-v251/metasearch 
-git clone https://github.com/suikoucalender/metasearch.git metasearch_dev 
-cd metasearch_dev/metasearch 
-npm install 
-nano config/config.json 
-#passを"pass": "uE7dOLCbHi" 
-#portを3000->3002 
-"urlをhttps://meta.fs.a.u-tokyo.ac.jp/metasearch->https://meta.fs.a.u-tokyo.ac.jp/metasearch_dev 
- 
-cd script 
-wget https://github.com/suikoucalender/metasearch/releases/download/0.1/krona_v2.7.1_cv1.sif 
-wget https://github.com/suikoucalender/metasearch/releases/download/0.1/python3_env_mako_installed.sif 
-wget https://github.com/suikoucalender/mitosearch_related_files/releases/download/0.01/ncbi_blast_2.13.0.sif 
- 
-#nano config.sh 
-##blastdb_pathを編集 
- 
-mkdir ../data 
-cd ../data 
-cp -r /home/yoshitake.kazutoshi/work3/metasearch/2023/db4-2-merge/merge2 db_merge 
-mkdir db 
-cd db 
-for i in `ls ../db_merge/`; do echo $i; j=`basename $i .tsv`; mkdir -p $j; awk -F'\t' -v dir=$j '$1=="id"{filename=dir"/"$2".input"} {print $0 > filename}' ../db_merge/$i ; done 
-cd .. 
-mkdir blastdb 
-ln -s /suikou/download9-v251/metasearch/data/mergedDB.maskadaptors.fa* blastdb/ 
-ln -s /suikou/download9-v251/metasearch/data/sra_result_2024_01-19.csv.tsv3 sra_info.txt 
- 
-#yoshitakeやsuikouユーザで 
-sudo nano /etc/systemd/system/metasearch_dev.service 
-``` 
- 
-``` 
-[Unit] 
-Description = metasearch_dev 
-After = netwark.target 
- 
-[Service] 
-Environment=logdir=/suikou/download9-v251/metasearch/metasearch_dev 
-Environment=workdir=/suikou/download9-v251/metasearch/metasearch_dev/metasearch 
-ExecStart=/usr/local/bin/forever start -a -l ${logdir}/forever.log -o ${logdir}/out.log -e ${logdir}/err.log -w --workingDir ${workdir} --watchDirectory ${workdir} ${workdir}/app.js 
-ExecStop=/usr/local/bin/forever stop ${workdir}/app.js 
-Restart=always 
-RestartSec=10 
-User=user2 
-Environment=PATH=/usr/bin:/usr/local/bin 
-SyslogIdentifier=node-server 
-Type=forking 
-Environment=NODE_ENV=production 
- 
-[Install] 
-WantedBy=multi-user.target 
-``` 
- 
-``` 
-sudo systemctl enable --now metasearch_dev 
-``` 
- 
-# m128mでapacheのインストール 
- 
-m128mで稼働させたいサービス 
- 
-- mitosearch 
-- metasearch 
-- let's encrypt 
-- mitosearchデータ更新用 
-- データバックアップ用 
- 
-## apacheのインストール 
- 
-``` 
-sudo dnf install httpd 
-``` 
- 
-``` 
-sudo nano /etc/httpd/conf.d/proxy.conf 
- 
-ProxyPass /metasearch/  http://localhost:3000/ 
-ProxyPassReverse /metasearch/ http://localhost:3000/ 
-ProxyPass /metasearch_dev/ http://localhost:3002/ 
-ProxyPassReverse /metasearch_dev/ http://localhost:3002/ 
-ProxyPass /mitosearch_dev/ http://localhost:3003/ 
-ProxyPassReverse /mitosearch_dev/ http://localhost:3003/ 
-ProxyPass /mitosearch/ http://localhost:3004/ 
-ProxyPassReverse /mitosearch/ http://localhost:3004/ 
-ProxyPass /mitosearch_private/ http://localhost:3006/ 
-ProxyPassReverse /mitosearch_private/ http://localhost:3006/ 
-``` 
- 
-``` 
-sudo systemctl start httpd.service 
-sudo systemctl status httpd.service 
-sudo systemctl enable httpd.service 
-#dummyページ作成 
-sudo touch /var/www/html/index.html 
-``` 
- 
-## certbotのインストール 
- 
-``` 
-sudo ln -s /var/lib/snapd/snap /snap 
-sudo snap install --classic certbot 
- 
-#m50v251n3から/etc/letsencrypt/をコピーしておく。シンボリックリンクはシンボリックリンクでコピーする必要があるようなので、tarで固めてからコピーした。 
- 
-echo '<VirtualHost *:80> 
-  DocumentRoot "/var/www/html" 
-  ServerName "meta.fs.a.u-tokyo.ac.jp" 
-</VirtualHost> 
-' >> /etc/httpd/conf/httpd.conf 
-   
-sudo yum -y install mod_ssl 
-certbot --apache 
-#これでhttpsがつながるようになる 
- 
-#更新のテスト 
-/var/lib/snapd/snap/bin/certbot renew --dry-run --post-hook "systemctl restart httpd.service" 
- 
-#cronに下記を登録 
-/var/lib/snapd/snap/bin/certbot renew --post-hook "systemctl restart httpd.service" 
-``` 
- 
-## r251→m50v251n3のhttp, httpsをr251→m128mに切り替える 
- 
-``` 
-ssh -l yoshitake r251 
-sudo nano /etc/ufw/before.rules 
-#下記に変更 
-#-A PREROUTING -i enp5s0 -p tcp -d 133.11.144.11 --dport 80 -j DNAT --to-destination 192.168.253.160:80 
-#-A PREROUTING -i enp5s0 -p tcp -d 133.11.144.11 --dport 443 -j DNAT --to-destination 192.168.253.160:443 
- 
-sudo systemctl restart ufw.service 
-``` 
- 
-# データベースの自動更新スクリプトの定期実行 
- 
-user2で 
- 
-``` 
-cd /suikou/download9-v251/mitosearch_update 
-git clone https://suikoucalender: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@github.com/suikoucalender/mitosearch_related_files 
- 
- 
-``` 
- 
-# crontabでの自動実行 
- 
-``` 
-#m128m 
-0 4 * * * root rsync -av --progress --delete m32s:/m2/db m32s:/m2/download m32s:/m2/download9 m32s:/m2/tool m32s:/m2/tool9 m32s:/m2/tool-all m32s:/m2/tool9-all /data/suikou-m2/ 
-#0 6 * * * yoshitake.kazutoshi rsync -av --progress --delete /suikou/download9-v251 /suikou/root-files-v251 r251:/data/backup-m128m 
-0 0 1 * * user2 bash /suikou/download9-v251/mitosearch_update/mitosearch_related_files/script/mitosearch_db.sh > /tmp/mitosearch_db_$(date "+\%Y\%m\%d-\%H\%M").log 2>&1 
-0 3 * * 6 root /var/lib/snapd/snap/bin/certbot renew --post-hook "systemctl restart httpd.service" > /tmp/letsencrypt_$(date "+\%Y\%m\%d-\%H\%M").log 2>&1 
-``` 
- 
-``` 
-#m30v251n3 
-0 6 * * * root rsync -av --progress --delete m128m:/data/suikou-m2/root-files-v251 m128m:/data/suikou-m2/download9-v251 /mnt/n3data/backup-m128m 
- 
-``` 
  
  • mitosearch本番環境構築手順.1711673894.txt.gz
  • 最終更新: 2024/03/29 00:58
  • by 210.137.33.14