ATLAS日本基礎ネットワーク LCGミドルウエアトレーニングコース

第五回 情報サービス~グリッドを見渡す

ここでの目標

1.情報サービスの概要

1.1.グリッドの情報網の構成

グリッド上にどのようなサイトがあって、どのような資源が割り当てられており、どのくらい使われているかなど、効率的に情報を集める仕組みが必要なのは言うまでもありません。LDAP(Lightweight Directory Access Protocol)をベースに、情報検索の仕組みが用意されています。

1.2.トップBDII

そもそもこのグリッドには何があるかという情報を問い合わせるエントリーポイントが必要です。ここをご覧ください。このグリッドの情報を調べる一番最初の手がかりがあります。

# test cluster for icepp & kek
ICEPP_TESTBED1 ldap://gridtb02.icepp.jp:2170/mds-vo-name=ICEPP_TESTBED1,o=grid

# KEK
KEK_TESTBED1	ldap://dg01.cc.kek.jp:2170/mds-vo-name=KEK_TESTBED1,o=grid
KEK_TESTBED2	ldap://lcg009.cc.kek.jp:2170/mds-vo-name=KEK_TESTBED2,o=grid
KEK_TESTBED3	ldap://dg06.cc.kek.jp:2170/mds-vo-name=KEK_TESTBED3,o=grid

#kobe-u
Japan_kobe_LCG2 ldap://susy03.kobe.jp.hep.net:2170/mds-vo-name=Japan_kobe_LCG2,o=grid

1.3.サイトBDII

接続されているサイトの名前と情報検索に必要な名前などが書かれています。ここに書かれているLDAPサーバに直接問い合わせることが出来ます。これらはサイトBDIIと呼ばれます。BDIIとはBarkely Directory Information Indexというディレクトリサービス(単純な情報、名前=値といった情報を与える仕組み)です。

ここにはサイトが持っているCEやSE、RB等の情報への目次があります。GLUEスキーマ(Grid Laboratory for Uniform Environmentと呼ばれる一種の情報規格化組織の決めたスキーマ(データベースのテーブル))によって提供されます。

1.4.GRIS

個別のCEやSE等のグリッド資源は自分の持っている資源の詳細な情報を提供します。Grid Resource Information Serviceというサービスです。これもLDAPを元にしており、直接問い泡焦ることが出来ます。

2.情報取得コマンド

2.1.lcg-infositesコマンド

直接LDAPサーバに問い合わせるのは面倒なので、ユーザ向けに情報取得コマンドがいくつか用意されています。まず一番簡単なのがlcg-infositesコマンドです。

まず、CEについて問い合わせてみましょう。VOを指定する必要があります。

$ lcg-infosites --vo atlas_j ce
****************************************************************
These are the related data for atlas_j: (in terms of queues and CPUs)
****************************************************************
#CPU    Free    Total Jobs      Running Waiting ComputingElement
----------------------------------------------------------
  32      32       6              0        6    dg01.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
  20      20       0              0        0    dg06.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
   8       8       0              0        0    lcg009.cc.kek.jp:2119/jobmanager-lcglsf-atlas_j
  14      14       0              0        0    gridtb02.icepp.jp:2119/jobmanager-lcgpbs-atlas_j

SEについても同様に問い合わせることが出来ます。

$ lcg-infosites --vo atlas_j se
**************************************************************
These are the related data for atlas_j: (in terms of SE)
**************************************************************
Avail Space(Kb) Used Space(Kb)  Type    SEs
----------------------------------------------------------
1               1                       dg05.cc.kek.jp
1               1                       dg05.cc.kek.jp
1               1                       dg05.cc.kek.jp

CEと、それに一番近いSEを表示させます。

$ lcg-infosites --vo atlas_j closeSE
Name of the CE: dg01.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
Name of the close SE:   dg05.cc.kek.jp
Name of the CE: dg06.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
Name of the close SE:   dg05.cc.kek.jp
Name of the CE: lcg009.cc.kek.jp:2119/jobmanager-lcglsf-atlas_j
Name of the close SE:   dg05.cc.kek.jp
Name of the CE: gridtb02.icepp.jp:2119/jobmanager-lcgpbs-atlas_j

サイト毎に持っているTAGを表示させることも出来ます。

$ lcg-infosites --vo atlas_j tag
**************************************************************************
Information for atlas_j relative to their software tags included in each CE
**************************************************************************
        Name of the CE:dg01.cc.kek.jp
        Name of the CE:dg06.cc.kek.jp
        Name of the CE:lcg009.cc.kek.jp
Name of the TAG: VO-atlas_j-release-10.0.4
        Name of the CE:gridtb02.icepp.jp

将来的にはレプリカカタログに関する情報も表示できるようになるはずです。

2.2.lcg-infoコマンド

もう少し複雑なものにlcg-infoコマンドがあります。これはデータベースの中身を調節表示させます。どのような属性(データベーステーブルの項目)があるかを見ましょう。

$ lcg-info --list-attrs
Attribute name  Glue object class     Glue attribute name
EstRespTime     GlueCE                GlueCEStateEstimatedResponseTime
WorstRespTime   GlueCE                GlueCEStateWorstResponseTime
TotalJobs       GlueCE                GlueCEStateTotalJobs
TotalCPUs       GlueCE                GlueCEInfoTotalCPUs
MaxRunningJobs  GlueCE                GlueCEPolicyMaxRunningJobs
CE              GlueCE                GlueCEUniqueID
WaitingJobs     GlueCE                GlueCEStateWaitingJobs
MaxCPUTime      GlueCE                GlueCEPolicyMaxCPUTime
MaxTotalJobs    GlueCE                GlueCEPolicyMaxTotalJobs
CEStatus        GlueCE                GlueCEStateStatus
CEVOs           GlueCE                GlueCEAccessControlBaseRule
FreeCPUs        GlueCE                GlueCEStateFreeCPUs
RunningJobs     GlueCE                GlueCEStateRunningJobs
MaxWCTime       GlueCE                GlueCEPolicyMaxWallClockTime
CloseCE         GlueCESEBindGroup     GlueCESEBindGroupCEUniqueID
CloseSE         GlueCESEBindGroup     GlueCESEBindGroupSEUniqueID
AvailableSpace  GlueSA                GlueSAStateAvailableSpace
SEVOs           GlueSA                GlueSAAccessControlBaseRule
UsedSpace       GlueSA                GlueSAStateUsedSpace
Type            GlueSE                GlueSEType
SE              GlueSE                GlueSEUniqueID
Protocol        GlueSEAccessProtocol  GlueSEAccessProtocolType
ArchType        GlueSL                GlueSLArchitectureType
SMPSize         GlueSubCluster        GlueHostArchitectureSMPSize
Processor       GlueSubCluster        GlueHostProcessorModel
OS              GlueSubCluster        GlueHostOperatingSystemName
Cluster         GlueSubCluster        GlueSubClusterUniqueID
Tag             GlueSubCluster        GlueHostApplicationSoftwareRunTimeEnvironment
CINT2000        GlueSubCluster        GlueHostBenchmarkSI00
OSVersion       GlueSubCluster        GlueHostOperatingSystemVersion
CFP2000         GlueSubCluster        GlueHostBenchmarkSF00
OSRelease       GlueSubCluster        GlueHostOperatingSystemRelease
ClockSpeed      GlueSubCluster        GlueHostProcessorClockSpeed
Memory          GlueSubCluster        GlueHostMainMemoryRAMSize

CE毎に属性を選んで表示させることが出来ます。

$ lcg-info --list-ce --attrs 'RunningJobs,FreeCPUs'
- CE: dg01.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
  - RunningJobs         0
  - FreeCPUs            32
- CE: dg01.cc.kek.jp:2119/jobmanager-lcgpbs-g4med
  - RunningJobs         0
  - FreeCPUs            32
- CE: dg06.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
  - RunningJobs         0
  - FreeCPUs            20
- CE: dg06.cc.kek.jp:2119/jobmanager-lcgpbs-g4med
  - RunningJobs         0
  - FreeCPUs            20
- CE: gridtb02.icepp.jp:2119/jobmanager-lcgpbs-atlas_j
  - RunningJobs         0
  - FreeCPUs            14
- CE: gridtb02.icepp.jp:2119/jobmanager-lcgpbs-rcrd
  - RunningJobs         0
  - FreeCPUs            14

VOを条件として加えます。

$ lcg-info --list-ce --vo atlas_j --attrs 'Memory'
- CE: dg01.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
  - Memory              768
- CE: dg06.cc.kek.jp:2119/jobmanager-lcgpbs-atlas_j
  - Memory              768076
- CE: gridtb02.icepp.jp:2119/jobmanager-lcgpbs-atlas_j
  - Memory              1025
- CE: lcg009.cc.kek.jp:2119/jobmanager-lcglsf-atlas_j
  - Memory              1025

条件問い合わせ(Query)をつけます。

$ lcg-info --list-ce --vo atlas_j --query 'Memory=1025' --attrs 'Memory,CINT2000'
- CE: gridtb02.icepp.jp:2119/jobmanager-lcgpbs-atlas_j
  - Memory              1025
  - CINT2000            381
- CE: lcg009.cc.kek.jp:2119/jobmanager-lcglsf-atlas_j
  - Memory              1025
  - CINT2000            381

3.情報サーバへの問い合わせ

3.1.ldapsearchによるCEやSEへの問い合わせ

直接GRISに問い合わせてみましょう。ldapsearchというツールを使います。gridtb03はICEPPのCEです。

$ ldapsearch -x -h gridtb03.icepp.jp -p 2135 -b "mds-vo-name=local,o=grid"
version: 2
#
# filter: (objectclass=*)
# requesting: ALL
#
# gridtb03.icepp.jp:2136, local, grid
dn: GlueServiceUniqueID=gridtb03.icepp.jp:2136,Mds-vo-name=local,o=grid
objectClass: GlueTop
objectClass: GlueService
objectClass: GlueKey
objectClass: GlueSchemaVersion
GlueServiceUniqueID: gridtb03.icepp.jp:2136
GlueServiceName: ICEPP_TESTBED1-gridice
GlueServiceType: gridice
GlueServiceVersion: 1.1
GlueServiceEndpoint: ldap://gridtb03.icepp.jp:2136/mds-vo-name=local,o=grid
GlueServiceAccessPointURL: not_used
GlueServiceStatus: OK
GlueServiceStatusInfo: No Problems
GlueServiceStartTime: 2002-10-09T19:00:00Z
GlueServiceOwner: LCG
GlueServiceAccessControlRule: atlas_j
GlueServiceAccessControlRule: rcrd
GlueServiceAccessControlRule: test_atlas
GlueServiceAccessControlRule: test_dteam
GlueServiceAccessControlRule: apdg
GlueForeignKey: GlueSiteUniqueID=ICEPP_TESTBED1
GlueSchemaVersionMajor: 1
GlueSchemaVersionMinor: 2
# local, grid
dn: Mds-Vo-name=local,o=grid
objectClass: GlobusStub
# search result
search: 2
result: 0 Success
# numResponses: 3
# numEntries: 2

同様にSEに問い合わせることも出来ます。

3.2.サイトBDIIへの問い合わせ

サイトBDIIへも、ldapsearchを使って問い合わせます。この場合-bで名前を指定する必要があります。

$ ldapsearch -x -h gridtb02.icepp.jp -p 2170 -b "mds-vo-name=ICEPP_TESTBED1,o=grid"
version: 2
#
# filter: (objectclass=*)
# requesting: ALL
#
# ICEPP_TESTBED1, grid
dn: mds-vo-name=ICEPP_TESTBED1,o=grid
objectClass: GlueTop
# ICEPP_TESTBED1, ICEPP_TESTBED1, grid
dn: GlueSiteUniqueID=ICEPP_TESTBED1,mds-vo-name=ICEPP_TESTBED1,o=grid
objectClass: GlueTop
objectClass: GlueSite
objectClass: GlueKey
objectClass: GlueSchemaVersion
GlueSiteUniqueID: ICEPP_TESTBED1
GlueSiteName: ICEPP_TESTBED1
GlueSiteDescription: LCG Site
GlueSiteUserSupportContact: mailto: jun@soum.co.jp
GlueSiteSysAdminContact: mailto: jun@soum.co.jp
GlueSiteSecurityContact: mailto: jun@soum.co.jp
GlueSiteLocation: Tokyo,Japan
GlueSiteLatitude: 0.0
GlueSiteLongitude: 0.0
GlueSiteWeb: http://wwwrc.icepp.s.u-tokyo.ac.jp/atlas-japan/farm_grid_wg/lcg/i
 ndex.html
GlueSiteOtherInfo: TIER 2
GlueSiteOtherInfo: icepp.jp
GlueForeignKey: GlueSiteUniqueID=ICEPP_TESTBED1

実際にはこの先にもたくさんの情報が表示されます。

4.グリッドモニター

4.1.GridIce

GridIceというモニターがあります。ここをご覧ください。



2005年12月20日更新