共通計算機の使用マニュアル

GWマシン anago [133.3.134.16] について

学外からMSS_Project_LAN[10.249.84.0/255.255.255.0]へanago.cheme.kyoto-u.ac.jp [133.3.134.16] を経由して到達するには、以下の2つの方法がある。いずれもanagoのrootで作業する必要があるので、希望者は管理者(山本量一:ryoichi@cheme.kyoto-u.ac.jp)に連絡すること。

  • SSH
  • アカウントの追加はsuになり以下の通り。
       /usr/sbin/useradd -m new_user
       passwd new_user
  • パスワードの変更は各自のIDでログイン後に以下のようにする。
       passwd
  • Linuxからの接続は以下のようにする。
       ssh anago.cheme.kyoto-u.ac.jp
      又は
       ssh new_user@anago.cheme.kyoto-u.ac.jp
  • Windowsからの接続はコマンドプロンプトから以下のようにする、あるいはSSHのクライアントソフトを別途インストールする。
       ssh2 anago.cheme.kyoto-u.ac.jp
      又は
       ssh2 new_user@anago.cheme.kyoto-u.ac.jp
  • OpenVPN
  • クライアントマシンの追加は以下の様に行う。
  • anagoでの作業(クライアント証明書・秘密鍵作成)
     rootで作業
       
       # cd /etc/openvpn/easy-rsa
       # source vars
       NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
       # ./build-key your_client_name
       Generating a 1024 bit RSA private key
       ..............................++++++
       ........++++++
       writing new private key to 'your_client_name.key'
       -----
       You are about to be asked to enter information that will be incorporated
       into your certificate request.
       What you are about to enter is what is called a Distinguished Name or a DN.
       There are quite a few fields but you can leave some blank
       For some fields there will be a default value,
       If you enter '.', the field will be left blank.
       -----
       Country Name (2 letter code) [JP]:
       State or Province Name (full name) [Kyoto]:
       Locality Name (eg, city) [Kyoto]:
       Organization Name (eg, company) [anago.cheme.kyoto-u.ac.jp]:
       Organizational Unit Name (eg, section) []:
       Common Name (eg, your name or your server's hostname) [your_client_name]:
       Email Address [ryoichi@cheme.kyoto-u.ac.jp]:
       
       Please enter the following 'extra' attributes
       to be sent with your certificate request
       A challenge password []:
       An optional company name []:
       Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
       Check that the request matches the signature
       Signature ok
       The Subject's Distinguished Name is as follows
       countryName           :PRINTABLE:'JP'
       stateOrProvinceName   :PRINTABLE:'Kyoto'
       localityName          :PRINTABLE:'Kyoto'
       organizationName      :PRINTABLE:'anago.cheme.kyoto-u.ac.jp'
       commonName            :T61STRING:'your_client_name'
       emailAddress          :IA5STRING:'ryoichi@cheme.kyoto-u.ac.jp'
       Certificate is to be certified until Feb 23 05:32:19 2018 GMT (3650 days)
       Sign the certificate? [y/n]:y
       
       
       1 out of 1 certificate requests certified, commit? [y/n]y
       Write out database with 1 new entries
       Data Base Updated
  • クライアントマシンでの作業1(CA証明書、クライアント証明書・秘密鍵、TLS認証鍵設置)
     サーバー側から以下のファイルをクライアント側へ持ち込み、
     設定ファイル格納フォルダ(C:\Program Files\OpenVPN\config)へ格納する。
       
       CA証明書(/etc/openvpn/ca.crt)
       クライアント証明書(/etc/openvpn/easy-rsa/keys/your_client_name.crt)
       クライアント秘密鍵(/etc/openvpn/easy-rsa/keys/your_client_name.key)
       TLS認証鍵(/etc/openvpn/ta.key)
  • クライアントマシンでの作業2(クライアント設定ファイル(C:\Program Files\OpenVPN\config\*.ovpn)の作成)
     サンプルの設定ファイルanago_tap.ovpnを以下のように変更する。
     
     クライアント証明書・秘密鍵の名前を変更する。
       cert your_client_name.crt
       key your_client_name.key
       
     この2行はWindows XP以前では不要。Vistaではこれがないと動かない。
       route-method exe
       route-delay 2
  • Windowsからの接続手順
  • OpenVPN GUIを管理者権限で起動する。
  • タスクバー上のOpenVPN GUIアイコンを右クリックする。
  • 作成した設定ファイル(*.ovpn)を選択して「接続」する。終了するには「切断」する。
  • コマンドプロンプトで ping 10.249.84.174が通ればOK。
  • 接続が完了すると、クライアントマシンはMSS_Project_LANに直接繋がっているかのように振る舞う。MSS_Project_LANの設定は以下の通り。
       network: 10.249.84.0/255.255.255.0
       subnetmask: 255.255.255.0
       default gateway: 10.249.84.254
       DNS server: 10.224.253.1, 10.224.254.1
       web proxy: proxy.kuins.net:8080
       (自動設定 http://wpad.kuins.net/proxy.pac)
       smtp: semdmail.kuins.net

ホストマシン ebi [10.249.84.174] について(ファイルサーバー、コンパイル、ジョブの投入)

File System

  • ユーザーデータ

    /home/user_name/  ホームディレクトリ(4.3TB)

    /home1/user_name/  大きなデータの保管領域(16.9TB)

    /home2/temp/user_name/  作業領域、データの一時保管領域(3.3TB)

  • アプリケーション

    /opt/intel/  インテルコンパイラ

    /usr/sge/  Sun Grid Engine

tako**, ika**へのジョブの投入

  • キューの種類 (オプション -q で指定)

    small.q : 主にシングルCPU計算用。使用するノードはtako01--03。

    middle.q : 並列計算用。OpenMPとMPIに対応。16CPU以下であれば使用するCPUの数に特に規定はなし。並列環境オプション( -pe ) はそれぞれopenmp, mpi。 ノードはtako04, 05。

    large.q : 大規模並列計算用。OpenMP, Cluster-OpenMP, MPIに対応。CPUの数は必ず8の倍数に設定する(最大48)。並列環境オプション( -pe )はそれぞれopenmp-8, cluster-openmp-8, mpi-8。ノードはtako00,06--09,0a。

    ika.q : Core-i7ノードへのジョブ投入。使用するノードはika00--11。 並列環境オプション(-pe)はopenmp, openmp-4, cluster-openmp-4。

  • スクリプトファイル (run.sh) の例

    middle.qで4CPUのOpenMPの計算を投げる場合 *1

       #!/bin/sh
       #$ -S /bin/sh          #シェルの指定
       #$ -N username     #ジョブ名の指定
       #$ -cwd                   #カレントディレクトリでジョブを実行
       #$ -j y                       #標準出力と標準エラーを1つのファイルに保存
       #$ -q middle.q        #使用キューの指定
       #$ -pe openmp 4   #並列環境と使用プロセス数の指定
       # run
       ./a.out

    middle.qでMPIの計算を投げる場合

      #!/bin/sh
      #$ -S /bin/sh
      #$ -N username
      #$ -cwd
      #$ -j y
      #$ -q middle.q
      #$ -pe mpi 16
      #
      echo "=== START ==="
      date
      awk '{print $1;}' $PE_HOSTFILE > mpd.hosts  #並列環境のホスト名を取得
      mpdboot -n 2 -f mpd.hosts          #各ホストでmpdを起動
      mpiexec -n 16 -env I_MPI_DEVICE sock ./a.out #MPI計算の実行
      mpdallexit                  #mpdの終了
      echo "=== END ==="
      date

    large.qで24CPUのCluster-OpenMPの計算を投げる場合 *2

       #!/bin/sh
       #$ -S /bin/sh         #シェルの指定
       #$ -N username    #ジョブ名の指定
       #$ -cwd                   #カレントディレクトリでジョブを実行
       #$ -j y                      #標準出力と標準エラーを1つのファイルに保存
       #$ -q large.q           #使用キューの指定
       #$ -pe cluster-openmp-8 24  #並列環境と使用プロセス数の指定
       # make initial file (kmp_cluster.ini)
       echo -n "--hostlist=" > kmp_cluster.tmp
       awk '{ printf $1",";}' $PE_HOSTFILE >> kmp_cluster.tmp
       echo "--process_threads=8" >> kmp_cluster.tmp
       sed 's/,--process_threads/ --process_threads/g' kmp_cluster.tmp > kmp_cluster.ini
       rm kmp_cluster.tmp
       # run
       ./a.out
    • ジョブの投入と管理

      ジョブの投入はebiから行います。Grid Engineの基本的なコマンドは以下のようです。

      qsub: ジョブの投入コマンド。例えば,スクリプトファイル run.sh を投入する場合

         qsub run.sh

      qstat: ジョブの状態を確認。

      qhost: ノードの状態を確認。

Intelコンパイラのバージョンアップメモ

  • C++ for Linux、Fortran for Linux、Cluster Tool Kit for Linuxをインストールする。
  • /opt/intel/i*.*shを確認し、最新版に正しくリンクを張り直す。このファイルは各ノードの/etc/profile.d/i*.*shからシンボリックリンクが貼られており、ログイン時に自動的にbash、cshに反映される。

新規ユーザーを追加する

  • ebiでスーパーユーザになり以下を実行。
   # /usr/sbin/useradd -m USERNAME
   # passwd USERNAME
   # cd /var/yp; make
  • パスワードの変更は、各自のアカウントでログイン後に以下のコマンドで行なう。
   yppasswd

NISの設定

  • ebiはNISのプライマリサーバー
   NISドメイン: jstcrestmss
   NISサーバー(Primary): ebi: 10.249.84.174, 172.16.2.201
   NISサーバー(Secondary): tako: 10.249.84.173, 172.16.2.20

NFSの設定

  • ebi:/homeは10.249.84.0/255.255.255.0に対してNFSマウントを許可している。
  • ebiとホームディレクトリを共有にしたければクライアントマシンでNFSの設定を行う。

SAMBA

  • Workgroup => HYMD
  • ウインドウズマシンからパスワードなしでファイルを参照したければSambaにパスワードを登録する。
   SWATによる設定 [http://10.249.84.174:901/]
   ウインドウズマシンからファイルを参照したければ、
   SWAT->PASSWARD->ローカルマシンのパスワード管理->新規ユーザー追加