progetti:htcondor-tf:htcondor-ce_setup
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
progetti:htcondor-tf:htcondor-ce_setup [2020/09/22 16:39] – dalpra@infn.it | progetti:htcondor-tf:htcondor-ce_setup [2020/11/29 12:27] (current) – dalpra@infn.it | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ==== HTCondor-CE (old) ==== | ||
+ | |||
+ | == Notes for the manual setup of a HTCondor-CE | ||
+ | |||
+ | The HTCondor-CE must be installed on a HTCondor //submit node//, that is a machine where a SCHEDD daemon runs: | ||
+ | '' | ||
+ | MASTER, SCHEDD, COLLECTOR'' | ||
+ | Furthermore: | ||
+ | |||
+ | * It must also hold a valid X509 host certificate. | ||
+ | * Must be reachable from everywhere to the TCP port 9619. | ||
+ | * The repo for the latest stable release (3.2.1 as of writing) is: | ||
+ | * [[https:// | ||
+ | * Needed RPMs are: | ||
+ | | ||
+ | * To finalize the configuration one may refer to the official documentation here: [[https:// | ||
+ | * A few supplementary notes for non OSG people are provided below | ||
+ | |||
+ | == VOMS e Grid == | ||
+ | |||
+ | Official documentation points to [[https:// | ||
+ | \\ | ||
+ | '' | ||
+ | cp -a / | ||
+ | cp -a / | ||
+ | chown condor.condor / | ||
+ | '' | ||
+ | |||
+ | == GSI and authz == | ||
+ | |||
+ | HTCondor-CE relies on argus for authorization. A basic configuration example for argus his detailed below. | ||
+ | |||
+ | '' | ||
+ | [root@ce02-htc grid-security]# | ||
+ | globus_mapping / | ||
+ | [root@ce02-htc grid-security]# | ||
+ | [root@ce02-htc grid-security]# | ||
+ | pep_ssl_server_capath / | ||
+ | pep_ssl_client_cert / | ||
+ | pep_ssl_client_key / | ||
+ | pep_url https://< | ||
+ | pep_timeout 30 # seconds\\ | ||
+ | xacml_resourceid http://< | ||
+ | \\ | ||
+ | '' | ||
+ | |||
+ | == GSI and argus == | ||
+ | |||
+ | Refer to the official documentation: | ||
+ | |||
+ | '' | ||
+ | [root@argus ~]# pap-admin lp\\ | ||
+ | \\ | ||
+ | default (local):\\ | ||
+ | \\ | ||
+ | resource " | ||
+ | obligation " | ||
+ | }\\ | ||
+ | \\ | ||
+ | action " | ||
+ | rule permit { vo=" | ||
+ | rule permit { vo=" | ||
+ | rule permit { vo=" | ||
+ | rule permit { vo=" | ||
+ | rule permit { vo=" | ||
+ | rule permit { vo=" | ||
+ | }\\ | ||
+ | }\\ | ||
+ | '' | ||
+ | |||
+ | * You can consider installing the argus service on the HTC-CE host itself. This would probably ease early setup. | ||
+ | * Be aware that Argus need read/write access to the ''/ | ||
+ | |||
+ | To verify that your Argus service is properly configured to work with your HTC-CE: | ||
+ | * Create a valid proxy of a supported VO (i.e.: '' | ||
+ | * install an argus pep client on your HTC-CE ('' | ||
+ | * copy the proxy on the root dir of your HTC-CE as '' | ||
+ | * Execute the following example command (adapt to your case) | ||
+ | |||
+ | '' | ||
+ | [root@htc-ce-02 ~]# pepcli --pepd https:// | ||
+ | '' | ||
+ | |||
+ | On a working setup you should see an output like: | ||
+ | |||
+ | '' | ||
+ | Resource: http:// | ||
+ | Decision: Permit\\ | ||
+ | Obligation: http:// | ||
+ | Username: cms195\\ | ||
+ | Group: cms\\ | ||
+ | Secondary Groups: cms\\ | ||
+ | '' | ||
+ | |||
+ | As a further check you should see that the empty file | ||
+ | ''/ | ||
+ | |||
+ | '' | ||
+ | [root@argus ~]# ls -li / | ||
+ | 383663 -rw-r--r-- 2 root root 0 26 giu 2019 / | ||
+ | [root@argus ~]# ls -li / | ||
+ | | ||
+ | | ||
+ | '' | ||
+ | |||
+ | |||
+ | == condor_mapfile == | ||
+ | |||
+ | An entry has to be ADDED to the condor_mapfile to match the certificate DN for the hosts at your site.\\ | ||
+ | These are mapped to the value defined by UID_DOMAIN in HTCondor and HTCondor-CE (in our case: " | ||
+ | |||
+ | '' | ||
+ | [root@ce02-htc ~]# cat / | ||
+ | GSI " | ||
+ | GSI " | ||
+ | GSI " | ||
+ | GSI " | ||
+ | GSI " | ||
+ | GSI (.*) GSS_ASSIST_GRIDMAP\\ | ||
+ | GSI " | ||
+ | CLAIMTOBE .* anonymous@claimtobe\\ | ||
+ | FS (.*) \1\\ | ||
+ | \\ | ||
+ | '' | ||
+ | |||
+ | === Configuration === | ||
+ | |||
+ | The default configuration path is ''/ | ||
+ | A tool '' | ||
+ | |||
+ | == Examples == | ||
+ | * Find //where// and //how// is defined an identifier (Knob) whose name is exactly known: | ||
+ | '' | ||
+ | HTCONDORCE_VONames = alice, atlas, cdf, cms, dteam, lhcb, virgo\\ | ||
+ | # at: / | ||
+ | * See names and value for identifiers matching a part: | ||
+ | '' | ||
+ | # Configuration from machine: ce03-htc.cr.cnaf.infn.it\\ | ||
+ | \\ | ||
+ | # Parameters with names that match HTCONDORCE: | ||
+ | HTCONDORCE_BDII_ELECTION = LEADER\\ | ||
+ | HTCONDORCE_BDII_LEADER = ce03-htc.cr.cnaf.infn.it\\ | ||
+ | HTCONDORCE_CORES = 16 # cores per node\\ | ||
+ | [...] | ||
+ | '' | ||
+ | |||
+ | Most of the predefined values already have reasonable values and there should be no reason to alter them; by individually inspecting | ||
+ | |||
+ | Worth to mention entries are : | ||
+ | * '' | ||
+ | * '' | ||
+ | from file ''/ | ||
+ | This enables a CE monitoring webtool (CEView) which is visible as http:// | ||
+ | |||
+ | Atr this point the CE should be able to handle firts job submissions | ||
+ | |||
+ | === Testing the CE === | ||
+ | |||
+ | * From a User Interface having the '' | ||
+ | '' | ||
+ | use the '' | ||
+ | |||
+ | === BDII === | ||
+ | |||
+ | the rpm creates two configuration files and python script: | ||
+ | '' | ||
+ | [root@ce02-htc bdii]# rpm -ql htcondor-ce-bdii\\ | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | '' | ||
+ | |||
+ | **Note1:** the path is under / | ||
+ | **Note2:** i manually had to define one more knob: | ||
+ | '' | ||
+ | |||
+ | Otherwise the script '' | ||
+ | |||
+ | To check that the configuration is formally fine just execute / | ||
+ | a dump of the glue2 schema shoud appear on '' | ||
+ | |||
+ | finally, activate the service with | ||
+ | '' | ||
+ | systemctl start bdii'' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||