progetti:htcondor-tf:htcondor-ce_setup
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| progetti:htcondor-tf:htcondor-ce_setup [2019/04/18 07:59] – 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'' | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
