免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1216 | 回复: 0
打印 上一主题 下一主题

Linux下安装gt4 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-07 16:25 |只看该作者 |倒序浏览

安装gt4.

安装simpleCA和使用

配置另一台机器使用已有的simpleCA.

配置gt4

安全配置

GridFtp的安装和配置

RFT的安装和配置

安装和配置GRAM

作业提交

安装gt4.

  • 下载gt安装包 wget http://www.globus.org/ftppub/gt4/4.0/4.0.2/installers/bin/gt4.0.2-x86_rh_9-installer.tar.gz
  • 安装前准备

  • 建立安装用户建议globus用户, 该用户用于启动和管理gt4. 建立安装目录,也用于管理simpleca [root@CGSP45]# adduser globus
  • 准备安装目录 [root@CGSP45]# mkdir /usr/local/globus-4.0.1
    [root@CGSP45]# chown globus:globus /usr/local/globus-4.0.1
  • 安装前确保JAVA_HOME, ANT_HOME, GLOBUS_LOCATION正确设置 [globus@CGSP45 globus]$ echo $JAVA_HOME
    /usr/java/j2sdk1.4.2_08
    [globus@CGSP45 globus]$ echo $ANT_HOME
    /usr/apache-ant-1.6.2
    [globus@CGSP45 globus]$ echo $GLOBUS_LOCATION
    /usr/local/globus-4.0.1

    • 安装: [globus@CGSP45 globus]$ tar zxvpf gt4.0.1-x86_rh_9-binary-installer.tar.gz
      [globus@CGSP45 globus]$ cd gt4.0.1-x86_rh_9-binary-installer
      [globus@CGSP45 globus]$ ./configure --prefix=$GLOBUS_LOCATION
      [globus@CGSP45 globus]$ make 2>&1 | tee make.log
      [globus@CGSP45 globus]$ make install

    安装simpleCA和使用

    • 初始化globus的使用环境 [globus@CGSP45 globus]$ source /usr/local/globus-4.0.1/etc/globus-devel-env.sh

    • 安装simgleCA [globus@CGSP45 globus]$ /usr/local/globus-4.0.1/setup/globus/setup-simple-ca
         安装结果: [globus@CGSP45 globus]$ tree ~/.globus/simpleCA
      /home/globus/.globus/simpleCA
      |-- cacert.pem
      |-- certs
      |-- crl
      |-- globus_simple_ca_4a498a83_setup-0.18.tar.gz
      |-- grid-ca-ssl.conf
      |-- index.txt
      |-- index.txt.attr
      |-- newcerts
      |-- private
      |   `-- cakey.pem
      `-- serial
    4 directories, 12 files

    • 安装GSI [root@CGSP45 root]$ /usr/local/globus-4.0.1/setup/globus_simple_ca_4a498a83_setup/setup-gsi -default

    • 主机证书的生成和签发

  • 生成 grid-cert-request -host 'CGSP45'
    如果证书已经存在, 可以用 -force选项 强制覆盖. 生成的结果如下: /etc/grid-security
    |-- certificates
    |-- hostcert.pem
    |-- hostcert_request.pem
    |-- hostkey.pem
    证书的签发: 证书必须经过simpleCA签发才能生效. 将/etc/grid-security/hostcert_request.pem传给simleCA进行签发 [globus@CGSP45 globus]grid-ca-sign -in /etc/grid-security/hostcert_request.pem -out hostsigned.pem
    上述命令之后, 会在当前目录下生成hostsigned.pem, 同时会在~/.globus/simpleCA/newcert下保存一个备份. 用diff命令可以发现两个是完全一样的.
    将签发的证书放到/etc/grid-security目录下, 覆盖掉hostcert.pem.

    • 用户证书生成和签发用户证书的生成和签发过程与主机证书类似. 只是生成的时候用相应的用户运行 grid-cert-request 命令, 不加-host 选项.

  • 生成 [liulk@CGSP45 liulk]$ export GLOBUS_LOCATION=/usr/local/globus-4.0.1/
    [liulk@CGSP45 liulk]$ export PATH=$GLOBUS_LOCATION/bin:$PATH
    [liulk@CGSP45 liulk]$ grid-cert-request
    生成结果: .globus/
    |-- persisted
    |   `-- 10.0.2.45-5555
    |       `-- PersistentSubscription
    |           |-- a2733e00-d473-11da-aabe-c4538721e54a.obj
    |           |-- ae684ed0-d473-11da-aabe-c4538721e54a.obj
    |           `-- b58a05a0-d473-11da-aabe-c4538721e54a.obj
    |-- usercert.pem
    |-- usercert_request.pem
    `-- userkey.pem
  • 签发将 usercert_request.pem发送给globus用户. globus用户通过下面的命令签发证书 [globus@CGSP45 globus]$ grid-ca-sign -in usercert_request.pem  -out usersigned.pem
    然后将签发的结果 usersigned.pem 发送给用户liulk. liulk接到签发的证书后, 用签发的证书覆盖掉.globus/usercert.pem即可
  • 验证 [liulk@CGSP45 liulk]$ grid-proxy-init -debug -verify
    配置另一台机器使用已有的simpleCA.先在上面装gt.然后将已有simpleCA安装的时候产生的.globus/simpleCA/globus_simple_ca_4a498a83_setup-0.18.tar.gz复制到要配置的机器上.运行: [globus@CGSP45 globus]$ $GLOBUS_LOCATION/sbin/gpt-build globus_simple_ca_HASH_setup-0.17.tar.gz gcc32dbg
    [globus@CGSP45 globus]$ $GLOBUS_LOCATION/sbin/gpt-postinstall
    用root运行 [root@CGSP45 root]$ /usr/local/globus-4.0.1/setup/globus_simple_ca_4a498a83_setup/setup-gsi -default
    即可.
    配置gt4
    安全配置

    • 使container能够使用主机证书 [root@CGSP45 etc]# cd grid-security
      [root@CGSP45 grid-security]# cp hostkey.pem containerkey.pem
      [root@CGSP45 grid-security]# cp hostcert.pem containercert.pem
      [root@CGSP45 grid-security]# chown globus:globus containerkey.pem containercert.pem
      [root@CGSP45 grid-security]# ls -l
      -rw-r--r--    1 globus   globus       2625  4ÔÂ 28 20:29 containercert.pem
      -rw-r--r--    1 globus   globus        887  4ÔÂ 28 20:28 containerkey.pem
      -rw-r--r--    1 root     root         2625  4ÔÂ 28 18:16 hostcert.pem
      -r--------    1 root     root          887  4ÔÂ 28 18:11 hostkey.pem
      [root@CGSP45 grid-security]#
    • 编辑grid-mapfile文件
      grid-mapfile的作用是将网格中的用户映射成本地的用户. 每行是一个映射. 前面是网格用户, 后面是本机用户. 映射的一个entry可以用下面的方式取得网格用户和本机用户.以用户的身份运行: #取得网格用户的标识
      [liulk@CGSP45 liulk]$ grid-cert-info -subject
      /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk
      #取得主机用户的标识
      [liulk@CGSP45 liulk]$ whoami
      liulk
      [liulk@CGSP45 liulk]$
      生成映射文件并增加一个映射: [root@CGSP45 grid-security]# touch grid-mapfile
      [root@CGSP45 grid-security]# $GLOBUS_LOCATION/sbin/grid-mapfile-add-entry -dn /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk -ln liulk
      Modifying /etc/grid-security/grid-mapfile ...
      New entry:
      "/O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk" liulk
      (1) entry added
      [root@CGSP45 grid-security]# cat grid-mapfile
      "/O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk" liulk
      [root@CGSP45 grid-security]#

    GridFtp
    的安装和配置gridftp在全部安装gt之后基本上已经安装好了. 不需要经过特殊的配置就可以工作了. 当然, 需要前面的安全配置. 另外可能出现在使用globus-url-copy的实话, 找不到对应的动态链接库的问题. 解决:编辑/etc/ld.so.conf, 然后更新缓存 [root@CGSP45 root]# vi /etc/ld.so.conf
    [root@CGSP45 root]# cat /etc/ld.so.conf
    /usr/kerberos/lib
    /usr/X11R6/lib
    /usr/lib/sane
    /usr/lib/qt-3.1/lib
    /usr/local/globus-4.0.1/lib #这个是后来加入的.
    [root@CGSP45 root]# ldconfig -v -v -v
    启动gridftp-server [root@CGSP45 root]# globus-gridftp-server -S -p 2811
    其中:
    选项
    意义
    -S
    指定后台启动方式
    -p 2811
    启动在端口2811上
    测试其是否正常工作:
    [liulk@CGSP45 liulk]$ globus-url-copy -vb -dbg gsiftp://CGSP45/etc/hosts file:///home/liulk/host22
    [liulk@CGSP45 liulk]$ cat /etc/hosts
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1       localhost      
    10.0.2.45       CGSP45  CGSP05
    10.0.2.46       CGSP46  CGSP06
    10.0.2.47       CGSP47  CGSP07
    10.0.2.48       CGSP48  CGSP08
    10.0.2.49       CGSP49  CGSP09
    10.0.2.50       CGSP50  CGSP10
    10.0.2.51       CGSP51  CGSP11
    10.0.2.52       CGSP52  CGSP12
    [liulk@CGSP45 liulk]$ cat host22
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1       localhost      
    10.0.2.45       CGSP45  CGSP05
    10.0.2.46       CGSP46  CGSP06
    10.0.2.47       CGSP47  CGSP07
    10.0.2.48       CGSP48  CGSP08
    10.0.2.49       CGSP49  CGSP09
    10.0.2.50       CGSP50  CGSP10
    10.0.2.51       CGSP51  CGSP11
    10.0.2.52       CGSP52  CGSP12
    [liulk@CGSP45 liulk]$
    RFT的安装和配置RFT是是gridftp用来实现所谓的三方传输的使用. gridftp在进行三方传输的时候通过rft来记录传输状态, 从而使得可以在任何失败点进行重传.rft使用gt的安全进行认证和授权.

    • rft的安装. 默认情况下, 如果完全安装gt的话, rft本身已经安装好了.
    • rft的配置. 主要是数据库的配置. 新建一个mysql数据库及其相应的授权用户. [globus@CGSP45 globus_wsrf_rft]$ mysql -u root -p -e "create database rftDatabase;"
      [globus@CGSP45 globus_wsrf_rft]$ mysql -u root -p --database rftDatabase 编辑rft的配置文件: 我们用的是mysql数据库,主要是改jndi-config.xml如下的选项:            
                     
                      driverName
                     
                     
                      org.postgresql.Driver
                     
                      -->
                     
                      com.mysql.jdbc.Driver
                     
                  
                  
                     
                      connectionString
                     
                     
                      jdbc:postgresql://cgsp45/rftDatabase
                      -->
                     
                      jdbc:mysql://cgsp45/rftDatabase
                     
                  
                  
                     
                      userName
                     
                     
                      rftuser
                     
                  
                  
                     
                      password
                     
                     
                      rftpass
                     
                  
      [note]:别忘了将mysql的数据库驱动程序放入$GLOBUS_LOCATION/lib目录下:mysql-connector-java-3.0.9-stable-bin.jar.

    安装和配置GRAM

    • 安装如果全部安装gt的话, GRAM默认已经安装好了. 所以,我们需要的主要是配置.
      [note]:值得注意的是, GRAM使用Transport Level Security, 所以启动容器的时候 "-nosec" 选项不应该被使用. 否则, GRAM无法启动.
    • requirements

  • Transfer Level Security
  • Function Sudo
  • Local Scheduler
  • Scheduler Adapter
  • Gridftp 用于进行实际的文件传输操作
  • Rft 用于处理data staging和clean

    • 配置

  • 配置sudo [root@CGSP45 root]visudo
    [root@CGSP45 grid-security]# cat /etc/sudoers
    # sudoers file.
    # Globus GRAM entries
    globus  ALL=(liulk) NOPASSWD: /usr/local/globus-4.0.1/libexec/globus-gridmap-and-execute -g /etc/grid-security/grid-mapfile  /usr/local/globus-4.0.1/libexec/globus-job-manager-script.pl *
    globus  ALL=(liulk) NOPASSWD: /usr/local/globus-4.0.1/libexec/globus-gridmap-and-execute -g /etc/grid-security/grid-mapfile  /usr/local/globus-4.0.1/libexec/globus-gram-local-proxy-tool *
    作业提交
  • 不带数据传输的测试

    • 编辑两个测试文件
      jobstest.xml ?xml version="1.0" encoding="UTF-8"?>
      job>
      executable>/bin/echoexecutable>
      argument>this is an example_string argument>
      argument>Globus was hereargument>
      stdout>/tmp/stdoutstdout>
      stderr>/tmp/stderrstderr>
      job>
    • 生成用户的代理证书 [liulk@CGSP45 liulk]$ grid-proxy-init
      Your identity: /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk
      Enter GRID pass phrase for this identity:
      phrase is too short, needs to be at least 4 chars
      Enter GRID pass phrase for this identity:
      Creating proxy ........................................... Done
      Your proxy is valid until: Sat Apr 29 11:21:52 2006
      [liulk@CGSP45 liulk]$ grid-proxy-info
      subject  : /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk/CN=1046079078
      issuer   : /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk
      identity : /O=Grid/OU=GlobusTest/OU=simpleCA-cgsp45/CN=liulk
      type     : Proxy draft (pre-RFC) compliant impersonation proxy
      strength : 512 bits
      path     : /tmp/x509up_u519
      timeleft : 11:59:36
      [liulk@CGSP45 liulk]$
    • 提交作业 [liulk@CGSP45 liulk]$ globusrun-ws -submit -F https://10.0.2.45:8443/wsrf/services/ManagedJobFactoryService -f jobtest.xml        
      Submitting job...Done.
      Job ID: uuid:61499c08-d6cb-11da-9f0c-00132065d6a7
      Termination time: 04/29/2006 15:26 GMT
      Current job state: Active
      Current job state: CleanUp
      Current job state: Done
      Destroying job...Done.
      [liulk@CGSP45 liulk]$ ls /tmp
      ...
      stderr
      stdout
      x509up_u519
      [liulk@CGSP45 liulk]$

  • 代数据传输的作业提交 test2.xml job>
        executable>my_echoexecutable>
        directory>${GLOBUS_USER_HOME}directory>
        argument>Helloargument>
        argument>World!argument>
        stdout>${GLOBUS_USER_HOME}/stdoutstdout>
        stderr>${GLOBUS_USER_HOME}/stderrstderr>
        fileStageIn>
            transfer>
                sourceUrl>gsiftp://10.0.2.45:6000/bin/echosourceUrl>
                destinationUrl>gsiftp://10.0.2.45:2811/${GLOBUS_USER_HOME}/my_echodestinationUrl>
            transfer>
        &lt%

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/43725/showart_376482.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP