* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Slide 1
		                    
		                    
								Survey							
                            
		                
		                
                            
                            
								Document related concepts							
                        
                        
                    
						
						
							Transcript						
					
					XRootD Release 4 And Beyond GSI Seminar Stanford University/SLAC July15, 2015 Andrew Hanushevsky, SLAC http://xrootd.org User Visible Changes I New client library: libXrdCl.so  First available in 3.3.0 now is default  Old deprecated client library is libXrdClient.so Copy command: xrdcopy xrdcopy renamed to xrdcp  Xrdcopy is now a symlink to xrdcp  Original xrdcp renamed toxrdcp-old   July 15, 2014 All have same command line interface! GSI Seminar ‹#› User Visible Changes II New meta command: xrdfs  Logical replacement to xrd command Different command line interface  More user friendly and intuitive  When installing Release 4 RPM  You must de-install previous XRootD release  July 15, 2014 They are incompatible GSI Seminar ‹#› Root Support New client is the default in ROOT  Since 5.34.14 (Dec 14, 2013)   Via TNetXNGFile plug-in Setting envar XNet.UseOldClient to 1  Loads TNetXFile instead (old client) Root 6 does not support new client Due to conflicts with PROOF  Expected to be resolved in release 6.1  July 15, 2014 GSI Seminar ‹#› Admin Visible Changes IPv6 support Public Private Networking Disk Caching Proxy HTTP Plug-in Remote Debugging Optional Client Plug-ins Miscellaneous July 15, 2014 GSI Seminar ‹#› IPv6 Support The new client supports IPv6  It prefers IPv6 whenever possible   This corresponds to HEPIX request Connects using mapped IPv4 addr if need be The old client is deprecated  It will not support IPv6 July 15, 2014 GSI Seminar ‹#› IPv6 Configuration Frankly none needed  Clients detect available network stacks  May force it to use various IP modes   Via configuration file or envars Server detects interfaces and DNS settings It’s important that DNS is setup correctly  May force server to use IPv4 only   July 15, 2014 Via command line option (-I v4) GSI Seminar ‹#› IPv6 Considerations I While servers and redirectors can accept both IPv6 and IPv4 clients. . .  IPv6 clients are assumed dual-stack  May be redirected to either IPv6 or IPv4 node   This works if all the servers are dual-stack   Client error recovery will resolve this if unworkable Generally the preferred migration path Since redirection is via hostname…  July 15, 2014 DNS entry must have no un-routable entries GSI Seminar ‹#› IPv6 Considerations II Client dual-stack assumption will be lifted in release 4.1 (3Q14)  Clients will be redirected to compatible nodes   If none, the client receives an error Largely driven by public-private networks  July 15, 2014 And interactions with IPv6/4 GSI Seminar ‹#› Public-Private Network Support Redirectors are now network cognizant  Servers inform redirectors of usable i/f’s Clients always compatibly redirected  Private to private and public to public  Subject to configured network topology   July 15, 2014 Via new xrd.network directive option Applies to servers and redirectors GSI Seminar ‹#› Public-Private Net Topologies xrd.network routes type [use if1[,if2]]  type: local | common | split  local (default)   common    Private incoming -> private (preferred) or public Public incoming -> only public split   No address differentiation (i.e. pre R4 mode) Incoming address must match outgoing address If use unspecified addresses come from DNS! July 15, 2014 GSI Seminar ‹#› Private Addresses & DNS Private addresses should never be in DNS  Unless It’s a site local DNS server or  The address is zone registered (i.e. only locally available)  This is the assumption used by XRootD  To avoid DNS reverse translation timeouts Hence, the use option might be needed  If a server connects using a private address July 15, 2014 GSI Seminar ‹#› Public-Private Considerations The available server interfaces Must be uniform within a cluster  Must be compatible with configured topology  Restrictions relaxed in R 4.1  Redirectors will match clients & server i/f’s   May lead to inaccessible files if no match exists Still working through external access issues  May require a separate redirector for external access  July 15, 2014 Due to IPv6/4 and public-private network interactions GSI Seminar ‹#› Networking Is Complex! There are many combinations now  Client and server capabilities must now match There are 4 basic combinations Public Private IPv6 IPv4 But things are not that simple! Dual stack clients add another 4 combinations July 15, 2014 GSI Seminar ‹#› Disk Caching Proxy New proxy server mode  Configured via pss.cachelib directive Caches whole files or file segments  Mode is configurable Cached content available for future access  Until LRU purged (configurable) Many use cases to increase access speed July 15, 2014 GSI Seminar ‹#› Typical Disk Caching Proxy Uses Speed up Remote XRootD Remote Access Clusters Caching Proxy Local Clients July 15, 2014 Caching Proxy XRootD Server HDFS Speed up Random Access Caching Proxy XRootD Cluster FS Speed up HD Access SSD GSI Seminar ‹#› HTTP Plug-in Basic http, https, WebDav access Suitable for browsers, curl, wget, & davix  Provides another mode of well-known access   http is neither low latency nor high-performance   Google & Microsoft have proposed improvements • Changes submitted to W3C and IETF as http2 • Improvements are considered incremental • They only address the most vexing problems Configured via xrd.protocol directive  July 15, 2014 And specialized http.xxx directives GSI Seminar ‹#› XRootD Multi-Protocol Support Always supported multiple protocols Improved architecture makes it much easier  New protocols can leverage XRootD features   Security, monitoring, file system plug-ins, etc XRootD Server Clients XRootD Bridge Memory Based Protocol Conversion Loadable Protocol July 15, 2014 GSI Seminar ‹#› Remote Debugging via DigFS XRootD provided pseudo file system Provides restricted selectable R/O access to  Configuration file  Core files Log files /proc/self (Linux only)   Has authentication & authorization options  Including access control restrictions View is standardized regardless of location  Configured via xrootd.diglib directive  July 15, 2014 GSI Seminar ‹#› The DigFS View /=/ Virtual exported path July 15, 2014 conf conf/etc (site specific) core/cmsd core/xrootd logs/cmsd logs/xrootd proc/cmsd proc/xrootd GSI Seminar ‹#› DigFS Authorization DigFS consults authorization file  Created by the site and specified in config file  xrootd.diglib * authfile + all [-]conf [-]core allow [-]logs [-]proc July 15, 2014 gsi host krb5 pwd sss unix GSI Seminar g=group h=host n=name o=org r=role +        ‹#› XRootD Client Relationships External Package XRootD - add on XRootD - core XRootD – plug-ins Athena FTS3 xrdcopy CopyProcess XrdClFilesystem xrdfs Dirac Gaudi PyXRootD root XrdClFile CMSSW PROOF XrdClPostMaster Plug-ins replace original implementation  All calls may be replaced  July 15, 2014 All layers above benefit with any code changes GSI Seminar ‹#› Client Plug-ins Plug-ins are loaded at run-time  Client looks for plug-in configuration files 1st Locally: ~/.xrootd/client.plugins.d/  2nd Globally: /etc/xrootd/client.plugins.d/   Both locations can be over-ridden via envar  XRD_PLUGINCONFDIR Plug-ins are strictly version checked  Allows for independent development July 15, 2014 GSI Seminar ‹#› Miscellaneous I Readv proxy pass-through  Automatic & greatly improves performance Manual log file rotation (e.g. logrotate)  Via extended –k command line option High precision log file timestamps  New –z command line option  July 15, 2014 Log timestamp appears in microsecond format GSI Seminar ‹#› Miscellaneous II Special stat() plug-in for odd file systems  Configured via the oss.statlib directive  Includes plug-in for GPFS with tape backend Cancellable third party copy  Used by transfer tools Fast directory listings  Stat info can now be included w/ dir entry  July 15, 2014 xrdfs uses this to speed up long listings GSI Seminar ‹#› Miscellaneous III New query config options  Use the xrdfs command to display Query cms  Query role  Query sitename  Query version  - shows cmsd status - shows server’s cluster role - shows the site’s name - shows server’s version Cluster node blacklisting  Via cms.blacklist directive & blacklist file  July 15, 2014 Useful in federated environments GSI Seminar ‹#› Miscellaneous IV New monitoring information  User login record now also includes Name of the client’s executable  Contents of client’s XRD_MONINFO envar    July 15, 2014 Useful to tie external information to actual data usage E.g. the Panda jobid to cross-reference I/O usage GSI Seminar ‹#› Looking Beyond Release 4 Cross Protocol Redirection Meta-links I/O Throttling Plug-in July 15, 2014 GSI Seminar ‹#› Cross-Protocol Redirections I XRootD protocol is capable of redirecting to a protocol other than xroot  On file open the server may tell the client that it’s more efficient to try something else  E.g. read the file locally from disk  July 15, 2014 Open(xroot://host/filename) -> redirect file://filename GSI Seminar ‹#› Cross-Protocol Redirections II New client already capable of processing out-of protocol redirections Server needs some development to do so Root’s TFile framework needs updating to handle a change in protocols  Changes already in development  July 15, 2014 Target for root 6.1 or 6.2 GSI Seminar ‹#› Meta-Link Files I XML file that describes one or more data files available for access  Meta-link file identified by dot suffix   metalink (v3) or meta4 (v4 & incompatible w/ v3) File is read and parsed by the client  Client picks one based on certain criteria   July 15, 2014 E.G. priority, location, etc If access fails, client can pick another one GSI Seminar ‹#› Metalink Files II XRootD client will support meta-link files  But the road is not straight-forward Incompatible meta-link formats, which one?  Need to avoid encumbering installation   I.e. pre-reqs for sites that don’t care about meta-links Targeting availability in 4Q14 July 15, 2014 GSI Seminar ‹#› I/O Throttling Plug-in Allows site to limit I/O access to disk  Useful for throttling external access   Used in federated environments via proxy server Configured via xrootd.fslib directive  And specific throttling directives Plug-in is in code review phase  Already used by CMS in production Targeting 3Q14 July 15, 2014 GSI Seminar ‹#› Acknowledgements Current Software Contributors ATLAS: Doug Benjamin, Patrick McGuigan, Ilija Vukotic CERN: Lukasz Janyst, Andreas Peters, Justin Salmon Fermi: Tony Johnson Root: Gerri Ganis, Bertrand Bellenot SLAC: Andrew Hanushevsky, Wilko Kroeger, Daniel Wang, Wei Yang UCSD: Matevz Tadel UNL: Brian Bockelman WLCG: Mattias Ellert, Fabrizio Furano, David Smith         US Department of Energy  Contract DE-AC02-76SF00515 with Stanford University July 15, 2014 GSI Seminar ‹#›
 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                            