SlideShare a Scribd company logo
1 of 37
CernVM File System
Workshop
   Steve Traylen, steve.traylen@cern.ch
   CERN, IT-PS-PES.




            EGEE User Forum
            28th March 2012
Outline
• CvmFS Description
  – Design
  – Security
• CvmFS at Sites
  – Clients, Squids
• CvmFS at Stratum Ones and Zero
  – CvmFS for repository maintainers.
• State of CvmFS within WLCG.
• CvmFS Future Work

                   Steve Traylen, CERN-IT.   2
CvmFS Motivation
• CvmFS is a Network File System
  – Designed with software distribution in
    mind.
    • Lots of small files.
    • Additions not constant but every few hours or
      days.
    • Minimize Distribution Delay
    • Files are typically accessed more than once.
  – Write in one location
    • Repository node.
  – Read in 100,000s of locations.
                  Steve Traylen, CERN-IT.             3
CvmFS Design
• Indistinguishable from a real filesystem
  – Easy for the end user.
• Security
  – File integrity is checked by every client on
    every file.
• Standard Protocols and Software
  – Uses http (not s) everywhere as it is easy.
  – apache httpd, squid but whatever.
  – Standard linux fuse at the client.


                  Steve Traylen, CERN-IT.          4
CvmFS Deployed
/cvmfs/repo/MyFile Shadow Tree: the one write




                                                                Stratum 0
                   location.
         cvmfs_sysc, operates on all new files in repo, e.g MyFile.

/repo/A345....de43b
                  Public tree: contains hashed compressed
                  files.
    Stratum 0 Web Server -         only Stratum 1s ever connect.

                                Stratum ones copy all new




                                                                Stratum
                                data
                                 with “cvmfs_replicate”.
   Stratum 1 Full Copy Stratum 1 Full Copy Geo separated and




                                                                1s
                                           fully redundant.


  SiteA OnDemand             SiteB Partial CacheSquids




                                                                Sites
         Batch                                Batch
                        Steve Traylen, CERN-IT.                             5
Day in The Life of a File
• Scenario:
  – Repository maintainer wants a file on all
    batch workers.
• Steps
  – File publication , happens on repository
    maintainer node.
  – File retrieval, happens on all batch workers.




                  Steve Traylen, CERN-IT.      6
File Publication
• Maintainer copies or creates file at
  stratum 0:
  – This is in the eventual correct path e.g,
    • /cvmfs/biomed.example.org/MyFile
• Maintainer tests new file system
  – /cvmfs/biomed.example.org
• Maintainer “commits” all new files -
  cvmfs_sync
  – Files are compressed and renamed to their
    sha1.
  – An SQLite db has a new record for MyFile
    added.        Steve Traylen, CERN-IT.    7
File Publication (2)
             /cvmfs/biomed.example.org/MyFile

                                      cvmfs_sync


  •http://example.org/biomed/12a..edf2 - Actual
  compressed MyFile
  •http://example.org/biomed/23f..ad22C - SQLite Database
  containing
              | /MyFile | 12a..edf2 |       one record per file.
  •http://example.org/biomed/.cvmfspublished - A pointer to
  catalog
               Simple text file with catalog file name ,
  12a..edf2.
• The .cvmpublished has a TTL of 15
  minutes.
• All other files have a TTL of 3 days.
                         Steve Traylen, CERN-IT.                  8
File Retrieval via fuse.
• CvmFS clients are a plugin in to fuse.
  – fuse intercepts all filesystem requests,
    • e.g stat, ls, cat , gcc, open, ....
    • cvmfs handles all file retrieval and presents file
      normally to the application.
  – a local area of disk is configured as disk
    cache.




                    Steve Traylen, CERN-IT.          9
File Retrieval (2)
• Batch job wants the file
  – /cvmfs/biomed.examle.org/MyFile
• cvmfs performs the following
  – Client downloads .cvmfspublished
    • This provides the file name “23f...ad22C” of
      sqlite catalog of the user required file paths.
  – Client downloads sqlite catalog
    • This provides the real on disk file name of
      ‘MyFile’, i.e 12a..edf2
  – Client downloads data file ‘12a..edf2’
    • fuse presents ‘12a..edf2’ as MyFile to batchjob.

                    Steve Traylen, CERN-IT.            10
What was the Point of
• Why bother with all that complication
  – Why not serve files as is.
• File system layout in sqlite database.
  – Operations like ls, stat, find . -type f are very
    quick.
  – The data is only downloaded as files are opened.
• De-duplication, e.g MyFile and MySameFile.
  – All files are saved with name of their sha1.
  – The duplicates are just extra rows in sqlite db.
     • No point having two files the same in cache or
       downloading same file twice.
  – Cache slots never need to be overwritten with new version
    of file.
                      Steve Traylen, CERN-IT.             11
File Security/Integrity
• Main risks
  – Files are being delivered via http.
  – Files may pass through 3rd party squids, ...
     • files from cern to cern sometimes go via BNL.
• x509 keys and certs are generated.
  – public certificate is delivered in advance to all
    sites.
  – release machine signs the first
    file .cvmfspublished at cvmfs_sync time.
• All files opened after this are located by
  sha1 name only and the sha1 is verified
  for each file.
• This is the simplified version of what
                     Steve Traylen, CERN-IT.          12
CvmFS at Sites - Squid
• CvmFS clients should not connect
  directly to stratum one servers.
  – A squid or other http proxy should be
    installed.
    • Can be a squid for a batch farm.
    • A university level squid.
    • A squid shared with another site.
  – Setting up two squids in redundant fashion
    is easy.
    • Client supports random and/or ordered lists of
      squids.
• CvmFS clients are not blocked from
                   Steve Traylen, CERN-IT.        13
Squid Setup
• A standard squid from OS vendor is
  perfectly good enough. A few
  configurations are important.
  – maximum_object_size - specifies max file
    size to cache.
    • default is 4MB , recommended 4GB.
  – cache_dir - specifies size of disk cache.
    • default is 100MB , recommended 50GB
      minimum.
• Both values depend greatly on active
  total and individual file size in
  repository.     Steve Traylen, CERN-IT.      14
Squid Setup (2)
• Site squids are contacted by all batch
  workers:
• Following config’s are for large clusters.
  – max_filedesc - Increase maximum open
    sockets.
    • Default 1024, increase to 8192
    • Verify usage with: squidclient mgr:info
       – Maximum number of file descriptors: 8192
         Largest file desc currently in use: 2839
         Number of file desc currently in use: 2753
  – net.ipv4.neigh.default.gc_thresh* - arp
    table.
                    Steve Traylen, CERN-IT.          15
Squid Setup (3)
• CvmFS clients support a list of squid
  servers.
  – Random list “SquidA|SquidB”
    • One site with two squid servers.
  – Ordered list
    ‘SquidSiteMine;SquidSiteOther’
    • One site using its own squid in preference to
      another site’s squid server.
• CvmFS clients move to next squid if
  files cannot be downloaded correctly.
  – Files are always checksummed after
                   Steve Traylen, CERN-IT.            16
Squid and Cache Digests
• Cache digests allow a cluster of squids
  to work together.
  – A pair (or more) site squids or stratum one
    squids can benefit.
• Squids peer from one another.
  – i.e A site with 3 site squid servers will only
    download each file once. After that each
    squid will fetch it first from an adjacent
    squid rather than going to the higher level
    to fetch the file.
• http://wiki.squid-cache.org/SquidFaq/
                   Steve Traylen, CERN-IT.       17
CvmFS at Sites - Client
• Install CvmFS packages via                      http://cernvm.cern.ch/portal/
  filesystem

   – Install guide present.
   – RHEL 5 and 6 packages, debian has been built
     from source.
• Configure either with script (cvmfs_config
  setup) or by hand:
   – /etc/fuse.conf       # Fuse Configuration
        • Allow other people to read fuse mount
   – /etc/auto.master # AutoFS configuration
      • Enable the /etc/auto.cvmfs
• chkconfing cvmfs on && service cvmfs on
• CvmFS clients default to enable e.g /cvmfs/
                        Steve Traylen, CERN-IT.                                   18
CvmFS Client
• CvmFS uses a default file and override
  configuration method.
  – /etc/cvmfs/default.conf is in the package
  – /etc/cvmfs/default.local is custom
   overrides.
• Minimal changes to make:
  – Sites should specify a squid service for
    their site.
    • CVMFS_HTTP_PROXY=http://yoursquid:2138
  – Sites should specify an ordered stratum

                  Steve Traylen, CERN-IT.      19
CvmFS Client
• Cache location and size.
  – CVMFS_QUOTA_LIMIT=10000 (MB)
  – CVMFS_CACHE_BASE=/var/cache/
• Note the cache is exclusive to each
  repository.
  – A future version of CvmFS will share a
    cache across all repositories.




                  Steve Traylen, CERN-IT.    20
CvmFS Client
• Per domain/repository overrides are also
  possible:
  – /etc/cvmfs/default.conf
     • global configuration from package.
  – /etc/cvmfs/default.local
     • global configuration from site admin.
  – /etc/cvmfs/domain.d/example.org.conf
     • configuration for *.example.org repos from package
  – /etc/cvmfs/domain.d/example.org.local
     • configuration for *.example.org repos from site admin
  – /etc/cvmfs/config.d/biomed.example.org.conf
     • configuration for biomed.example.org from
       package.
  – /etc/cvmfs/config.d/biomed.example.org.local
                       Steve Traylen, CERN-IT.                21
CvmFS Client
• The previous richness of config allows
  for specials per repository - Use cases:
  – Repository A requires more cache space
    than default.
    • Currently 4GB is enough for LHC VOs but LHCb
      requires 6.
  – Repository B is not supported on all or
    different stratum one services.
    • Currently ams.cern.ch is only on CERN stratum
      one.



                   Steve Traylen, CERN-IT.        22
Debugging Clients
• Dump resulting configuration, all those
  files make it complicated.
  – cvmfs_config showconfig
• Enable lots of verbosity to a log file:
  – CVMFS_DEBUGLOG = /tmp/cvmfs.log
    • Files grows quickly so switch off.
• Mount outside the auto mounter
  – mkdir /tmp/mnt
    mount -t cvmfs biomed /tmp/mnt
• Check syslog
  – cvmfs dumps a stack trace on crash.
                    Steve Traylen, CERN-IT.   23
Interrogating Clients
• When CvmFS file system is mounted it
  can be spoken to via a socket as root,
  e.g
  – cvmfs-talk -i atlas host info - determine
    which stratum one is being used.
    • Active host 0: http://cvmfs1.example.ch/opt/
      biomed
  – The local cache can be inspected.
    • What space is pinned or can be purged.
  – The active site squid server can be found.
    • Are all my hosts using that remote squid server
      and not mine?
                   Steve Traylen, CERN-IT.           24
CvmFS at Stratum 1
• The stratum one level provides all the
  redundancy for the clients.
• There should be several stratum ones at
  different sites.
• WLCG has 5 stratum ones. 2 or 3 (or
  even one) can easily handle the current
  load of 70,000 clients providing site
  squids are used.
  – CERN’s stratum one peaks around 40
    megabits.
• Stratum ones update once per hour
  from stratum zero.
                Steve Traylen, CERN-IT.   25
Stratum One Architecture
                 Stratum 00
                  Stratum
                                Stratum one replicates all files from
                                stratum 0. It uses CvmFS meta data,
                                i.e SQLite files to only download new
              Stratum 1 Backend files.
                                            Stratum one frontends
                                            are reverse proxies. i.e
   Stratum 1 Frontend Stratum 1 Frontend web servers that fetch
                                            and cache files from
                                            backend node.

       Site A    Site B     Site C

• Number of sites cannot impact
  replication of stratum 0 to stratum 1.
• Stratum 1 can be scaled up with more
  front-ends.
                          Steve Traylen, CERN-IT.                 26
Stratum 1 downloads, Feb



• Spike on 7th February caused by one
  batch cluster connecting directly with a
  bug.
  – More than trebled sum of all other traffic.
  – Site contacted, they changed their
    configuration.
• Stratum 1 is vulnerable to this but
  plenty of capacity is available, it can
                  Steve Traylen, CERN-IT.         27
CvmFS at Stratum Zero
• The stratum 0 is the one write location.
• Typically a stratum zero is made up of
  – A large NFS or similar diskspace with two
    areas:
    • shadow tree /cvmfs/biomed.example.org
       – The write version of the repository
    • public tree /pub
       – The processed tree served via a web server.
  – One small virtual machine per repository.
    • Each repository must have its own dedicated
      node.
    • Write access to the repository controlled with
      login access to the node.
                      Steve Traylen, CERN-IT.          28
CvmFS Stratum Zero
• Repository maintainer writes files to
  – /cvmfs/biomed.example.org
• A log of all file operations are made.
  – This is done with a 3rd party kernel module
    - redirfs
• Repository maintainer can now validate
  his installation and decide if he wants
  to publish.
  – Provides a window of opportunity to
    uncover mistakes, bad software, ....

                 Steve Traylen, CERN-IT.     29
Stratum Zero Advice
• Stratum Zeros is the point where bad
  releases may have to be rolled back.
  – Once a bad release has been published it
    will be visible at all sites in your entire
    infrastructure possibly declaring your
    whole infrastructure useless.
• Within WLCG stratum zero, filesystem
  snapshots are in place to allow a
  rollback.
  – Various mechanisms have been used, e.g
    • Netapp, LVM and ZFS snapshots have all been
                  Steve Traylen, CERN-IT.           30
Stratum Zero Failure
• The stratum ones continue to serve all
  their existing files.
• Clients will not notice in anyway that
  the stratum zero is missing.
• During failure new writes to the
  repository can not be made.




                Steve Traylen, CERN-IT.    31
Stratum Zero Security
• Two x509 key pairs are involved:
  – Repository managers key.
    • Private key lives on repository manager machine
    • It is used to sign the .cvmfspublished file
      during a release of biomed.example.org.
    • Clients do not trust this signature in advance of
      release.
  – Stratum Zero managers key.
    • Private key lives offline , e.g on crypto card.
    • Public certificate is deployed to every single
      CvmFS client.
       – CvmFS clients trust this service managers key
         completely.
                     Steve Traylen, CERN-IT.             32
Stratum Zero Security(2)
• Once per month a file (.cvmfswhitelist)
  is injected into biomed repository by
  the Stratum 0 manager.
  – The whitelist file is signed by the Stratum 0
    manager and contains a list of repository
    manager identities.
• The file states to the client:
  – Given you trust me please also trust these
    release manager machines for the next
    month.
• The client checks the whitelist first to
                  Steve Traylen, CERN-IT.     33
Atlas Comments on CvmFS
• Currently used for
  – Software both stable and nightly builds.
  – Conditions data
  – Around 0.5TB of files are served.
• While CvmFS is recommended for sites
  it is not universally used yet.
  – Some sites unwilling/unable to install fuse
    clients.
    • policy, diskless, only nfs space or similar
      weirdness.
  – To use CvmFS at these sites they require
    both:
                    Steve Traylen, CERN-IT.         34
CvmFS Current/Future
• Migration from automake to cmake.
• MacOS client - available but no official
  release.
• Shared cache on client between
  repositories.
• A cvmfs plugin to parrot , i.e user
  space.
• Server side to use AUFS for release
  changes.
    • AUFS = Advanced multilayered unification
      filesystem.
                  Steve Traylen, CERN-IT.       35
Support
• A mailing list hosted at http://cern.ch/
  egroups
  – cvmfs-talk@cern.ch
• Bug tracker:
  – https://savannah.cern.ch/projects/cernvm/
• Source code migrating now.
  – Current Release - cern svn.
  – Devel - http://github.com/cvmfs
• Release and documentation:
  – http://cernvm.cern.ch/portal/filesystem
                  Steve Traylen, CERN-IT.       36
Conclusions
• CvmFS solves well the problem of file
  distribution to 100,000s of clients in a
  fast, efficient and secure way.
• CvmFS is mission critical today for
  ATLAS, LHCb and shortly CMS.
• It is easy to set up the client so long as
  fuse is acceptable.
• The server side has been setup for
  other VOs outside WLCG in particular at
  SLAC and OSG. INFN and SARA have
                 Steve Traylen, CERN-IT.   37

More Related Content

What's hot

OSv at Cassandra Summit
OSv at Cassandra SummitOSv at Cassandra Summit
OSv at Cassandra SummitDon Marti
 
KVM and docker LXC Benchmarking with OpenStack
KVM and docker LXC Benchmarking with OpenStackKVM and docker LXC Benchmarking with OpenStack
KVM and docker LXC Benchmarking with OpenStackBoden Russell
 
Red Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewRed Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewMarcel Hergaarden
 
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLES
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLESQuick-and-Easy Deployment of a Ceph Storage Cluster with SLES
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLESJan Kalcic
 
Building a Virtualized Continuum with Intel(r) Clear Containers
Building a Virtualized Continuum with Intel(r) Clear ContainersBuilding a Virtualized Continuum with Intel(r) Clear Containers
Building a Virtualized Continuum with Intel(r) Clear ContainersMichelle Holley
 
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed_Hat_Storage
 
Inside Docker for Fedora20/RHEL7
Inside Docker for Fedora20/RHEL7Inside Docker for Fedora20/RHEL7
Inside Docker for Fedora20/RHEL7Etsuji Nakai
 
TUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data CenterTUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data CenterEttore Simone
 
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...Ceph Community
 
Build an High-Performance and High-Durable Block Storage Service Based on Ceph
Build an High-Performance and High-Durable Block Storage Service Based on CephBuild an High-Performance and High-Durable Block Storage Service Based on Ceph
Build an High-Performance and High-Durable Block Storage Service Based on CephRongze Zhu
 
KVM Tuning @ eBay
KVM Tuning @ eBayKVM Tuning @ eBay
KVM Tuning @ eBayXu Jiang
 
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014Amazon Web Services
 
Include os @ flossuk 2018
Include os @ flossuk 2018Include os @ flossuk 2018
Include os @ flossuk 2018Per Buer
 
Stateful Containers: Flocker on CoreOS
Stateful Containers: Flocker on CoreOSStateful Containers: Flocker on CoreOS
Stateful Containers: Flocker on CoreOSStephen Nguyen
 
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, OracleXPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, OracleThe Linux Foundation
 
NUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioNUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioHajime Tazaki
 
Reference Architecture: Architecting Ceph Storage Solutions
Reference Architecture: Architecting Ceph Storage Solutions Reference Architecture: Architecting Ceph Storage Solutions
Reference Architecture: Architecting Ceph Storage Solutions Ceph Community
 
Make container without_docker_7
Make container without_docker_7Make container without_docker_7
Make container without_docker_7Sam Kim
 
Ceph in the GRNET cloud stack
Ceph in the GRNET cloud stackCeph in the GRNET cloud stack
Ceph in the GRNET cloud stackNikos Kormpakis
 

What's hot (20)

OSv at Cassandra Summit
OSv at Cassandra SummitOSv at Cassandra Summit
OSv at Cassandra Summit
 
KVM and docker LXC Benchmarking with OpenStack
KVM and docker LXC Benchmarking with OpenStackKVM and docker LXC Benchmarking with OpenStack
KVM and docker LXC Benchmarking with OpenStack
 
Red Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewRed Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) Overview
 
A32 Database Virtulization Technologies
A32 Database Virtulization TechnologiesA32 Database Virtulization Technologies
A32 Database Virtulization Technologies
 
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLES
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLESQuick-and-Easy Deployment of a Ceph Storage Cluster with SLES
Quick-and-Easy Deployment of a Ceph Storage Cluster with SLES
 
Building a Virtualized Continuum with Intel(r) Clear Containers
Building a Virtualized Continuum with Intel(r) Clear ContainersBuilding a Virtualized Continuum with Intel(r) Clear Containers
Building a Virtualized Continuum with Intel(r) Clear Containers
 
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
 
Inside Docker for Fedora20/RHEL7
Inside Docker for Fedora20/RHEL7Inside Docker for Fedora20/RHEL7
Inside Docker for Fedora20/RHEL7
 
TUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data CenterTUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data Center
 
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
 
Build an High-Performance and High-Durable Block Storage Service Based on Ceph
Build an High-Performance and High-Durable Block Storage Service Based on CephBuild an High-Performance and High-Durable Block Storage Service Based on Ceph
Build an High-Performance and High-Durable Block Storage Service Based on Ceph
 
KVM Tuning @ eBay
KVM Tuning @ eBayKVM Tuning @ eBay
KVM Tuning @ eBay
 
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
 
Include os @ flossuk 2018
Include os @ flossuk 2018Include os @ flossuk 2018
Include os @ flossuk 2018
 
Stateful Containers: Flocker on CoreOS
Stateful Containers: Flocker on CoreOSStateful Containers: Flocker on CoreOS
Stateful Containers: Flocker on CoreOS
 
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, OracleXPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
 
NUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioNUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osio
 
Reference Architecture: Architecting Ceph Storage Solutions
Reference Architecture: Architecting Ceph Storage Solutions Reference Architecture: Architecting Ceph Storage Solutions
Reference Architecture: Architecting Ceph Storage Solutions
 
Make container without_docker_7
Make container without_docker_7Make container without_docker_7
Make container without_docker_7
 
Ceph in the GRNET cloud stack
Ceph in the GRNET cloud stackCeph in the GRNET cloud stack
Ceph in the GRNET cloud stack
 

Viewers also liked

Manifesto - for Entrepreneurs and Wannabes
Manifesto - for Entrepreneurs and WannabesManifesto - for Entrepreneurs and Wannabes
Manifesto - for Entrepreneurs and WannabesSimon Jansen
 
The 14 Most Important Addresses in the 2014 Lok Sabha Elections
The 14 Most Important Addresses in the 2014 Lok Sabha ElectionsThe 14 Most Important Addresses in the 2014 Lok Sabha Elections
The 14 Most Important Addresses in the 2014 Lok Sabha ElectionsEngrave
 
The Old City Signage
The Old City SignageThe Old City Signage
The Old City SignageSimon Jansen
 
Digitale media in kunst en cultuureducatie
Digitale media in kunst en cultuureducatieDigitale media in kunst en cultuureducatie
Digitale media in kunst en cultuureducatiejoanpoortman
 
Everything WALA
Everything WALAEverything WALA
Everything WALAEngrave
 
Puppet Camp CERN Geneva
Puppet Camp CERN GenevaPuppet Camp CERN Geneva
Puppet Camp CERN GenevaSteve Traylen
 
11 Names with Numbers
11 Names with Numbers11 Names with Numbers
11 Names with NumbersEngrave
 
I nyoman widya santika (1311909) ultrasonic machining
I nyoman widya santika (1311909) ultrasonic machiningI nyoman widya santika (1311909) ultrasonic machining
I nyoman widya santika (1311909) ultrasonic machiningWidhy Black Guns
 
보건행정학회 한국 공중보건체계 비판
보건행정학회 한국 공중보건체계 비판보건행정학회 한국 공중보건체계 비판
보건행정학회 한국 공중보건체계 비판Eunjeong Kang
 
건강증진 및 위험소통을 위한 건강영향평가
건강증진 및 위험소통을 위한 건강영향평가건강증진 및 위험소통을 위한 건강영향평가
건강증진 및 위험소통을 위한 건강영향평가Eunjeong Kang
 
CERN Agile Infrastructure, Road to Production
CERN Agile Infrastructure, Road to ProductionCERN Agile Infrastructure, Road to Production
CERN Agile Infrastructure, Road to ProductionSteve Traylen
 
Warren Buffett 42.0
Warren Buffett 42.0Warren Buffett 42.0
Warren Buffett 42.0Engrave
 
Perubahan panjang batang yang tidak seragam
Perubahan panjang batang yang tidak seragamPerubahan panjang batang yang tidak seragam
Perubahan panjang batang yang tidak seragamWidhy Black Guns
 

Viewers also liked (18)

Manifesto - for Entrepreneurs and Wannabes
Manifesto - for Entrepreneurs and WannabesManifesto - for Entrepreneurs and Wannabes
Manifesto - for Entrepreneurs and Wannabes
 
Question Four
Question FourQuestion Four
Question Four
 
The 14 Most Important Addresses in the 2014 Lok Sabha Elections
The 14 Most Important Addresses in the 2014 Lok Sabha ElectionsThe 14 Most Important Addresses in the 2014 Lok Sabha Elections
The 14 Most Important Addresses in the 2014 Lok Sabha Elections
 
Question three
Question threeQuestion three
Question three
 
The Old City Signage
The Old City SignageThe Old City Signage
The Old City Signage
 
Photo Shoot One
Photo Shoot OnePhoto Shoot One
Photo Shoot One
 
Digitale media in kunst en cultuureducatie
Digitale media in kunst en cultuureducatieDigitale media in kunst en cultuureducatie
Digitale media in kunst en cultuureducatie
 
Everything WALA
Everything WALAEverything WALA
Everything WALA
 
20 x20
20 x2020 x20
20 x20
 
Puppet Camp CERN Geneva
Puppet Camp CERN GenevaPuppet Camp CERN Geneva
Puppet Camp CERN Geneva
 
11 Names with Numbers
11 Names with Numbers11 Names with Numbers
11 Names with Numbers
 
Fusion joining
Fusion joiningFusion joining
Fusion joining
 
I nyoman widya santika (1311909) ultrasonic machining
I nyoman widya santika (1311909) ultrasonic machiningI nyoman widya santika (1311909) ultrasonic machining
I nyoman widya santika (1311909) ultrasonic machining
 
보건행정학회 한국 공중보건체계 비판
보건행정학회 한국 공중보건체계 비판보건행정학회 한국 공중보건체계 비판
보건행정학회 한국 공중보건체계 비판
 
건강증진 및 위험소통을 위한 건강영향평가
건강증진 및 위험소통을 위한 건강영향평가건강증진 및 위험소통을 위한 건강영향평가
건강증진 및 위험소통을 위한 건강영향평가
 
CERN Agile Infrastructure, Road to Production
CERN Agile Infrastructure, Road to ProductionCERN Agile Infrastructure, Road to Production
CERN Agile Infrastructure, Road to Production
 
Warren Buffett 42.0
Warren Buffett 42.0Warren Buffett 42.0
Warren Buffett 42.0
 
Perubahan panjang batang yang tidak seragam
Perubahan panjang batang yang tidak seragamPerubahan panjang batang yang tidak seragam
Perubahan panjang batang yang tidak seragam
 

Similar to CvmFS Workshop

Presentation data domain advanced features and functions
Presentation   data domain advanced features and functionsPresentation   data domain advanced features and functions
Presentation data domain advanced features and functionsxKinAnx
 
Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Dave Holland
 
Collaborate instant cloning_kyle
Collaborate instant cloning_kyleCollaborate instant cloning_kyle
Collaborate instant cloning_kyleKyle Hailey
 
Linux Container Primitives and Runtimes - AWS Summit Sydney
Linux Container Primitives and Runtimes - AWS Summit SydneyLinux Container Primitives and Runtimes - AWS Summit Sydney
Linux Container Primitives and Runtimes - AWS Summit SydneyAmazon Web Services
 
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014Amazon Web Services
 
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...Continuent
 
Considerations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfConsiderations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfhik_lhz
 
Toward 10,000 Containers on OpenStack
Toward 10,000 Containers on OpenStackToward 10,000 Containers on OpenStack
Toward 10,000 Containers on OpenStackTon Ngo
 
Cephfs jewel mds performance benchmark
Cephfs jewel mds performance benchmarkCephfs jewel mds performance benchmark
Cephfs jewel mds performance benchmarkXiaoxi Chen
 
EMC Data domain advanced features and functions
EMC Data domain advanced features and functionsEMC Data domain advanced features and functions
EMC Data domain advanced features and functionssolarisyougood
 
Container Performance Analysis Brendan Gregg, Netflix
Container Performance Analysis Brendan Gregg, NetflixContainer Performance Analysis Brendan Gregg, Netflix
Container Performance Analysis Brendan Gregg, NetflixDocker, Inc.
 
Scaling Ceph at CERN - Ceph Day Frankfurt
Scaling Ceph at CERN - Ceph Day Frankfurt Scaling Ceph at CERN - Ceph Day Frankfurt
Scaling Ceph at CERN - Ceph Day Frankfurt Ceph Community
 
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...DataStax
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance AnalysisBrendan Gregg
 
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISORLOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISORVanika Kapoor
 
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...confluent
 

Similar to CvmFS Workshop (20)

Presentation data domain advanced features and functions
Presentation   data domain advanced features and functionsPresentation   data domain advanced features and functions
Presentation data domain advanced features and functions
 
Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017
 
Collaborate instant cloning_kyle
Collaborate instant cloning_kyleCollaborate instant cloning_kyle
Collaborate instant cloning_kyle
 
Linux Container Primitives and Runtimes - AWS Summit Sydney
Linux Container Primitives and Runtimes - AWS Summit SydneyLinux Container Primitives and Runtimes - AWS Summit Sydney
Linux Container Primitives and Runtimes - AWS Summit Sydney
 
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
 
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...
Training Slides: Basics 107: Simple Tungsten Replicator Installation to Extra...
 
Considerations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfConsiderations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmf
 
Alfresco tuning part2
Alfresco tuning part2Alfresco tuning part2
Alfresco tuning part2
 
Lec7
Lec7Lec7
Lec7
 
Toward 10,000 Containers on OpenStack
Toward 10,000 Containers on OpenStackToward 10,000 Containers on OpenStack
Toward 10,000 Containers on OpenStack
 
Cephfs jewel mds performance benchmark
Cephfs jewel mds performance benchmarkCephfs jewel mds performance benchmark
Cephfs jewel mds performance benchmark
 
EMC Data domain advanced features and functions
EMC Data domain advanced features and functionsEMC Data domain advanced features and functions
EMC Data domain advanced features and functions
 
Container Performance Analysis Brendan Gregg, Netflix
Container Performance Analysis Brendan Gregg, NetflixContainer Performance Analysis Brendan Gregg, Netflix
Container Performance Analysis Brendan Gregg, Netflix
 
Docker
DockerDocker
Docker
 
Scaling Ceph at CERN - Ceph Day Frankfurt
Scaling Ceph at CERN - Ceph Day Frankfurt Scaling Ceph at CERN - Ceph Day Frankfurt
Scaling Ceph at CERN - Ceph Day Frankfurt
 
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
 
Container Performance Analysis
Container Performance AnalysisContainer Performance Analysis
Container Performance Analysis
 
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISORLOAD BALANCING OF APPLICATIONS  USING XEN HYPERVISOR
LOAD BALANCING OF APPLICATIONS USING XEN HYPERVISOR
 
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
 
Hadoop availability
Hadoop availabilityHadoop availability
Hadoop availability
 

Recently uploaded

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 

Recently uploaded (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 

CvmFS Workshop

  • 1. CernVM File System Workshop Steve Traylen, steve.traylen@cern.ch CERN, IT-PS-PES. EGEE User Forum 28th March 2012
  • 2. Outline • CvmFS Description – Design – Security • CvmFS at Sites – Clients, Squids • CvmFS at Stratum Ones and Zero – CvmFS for repository maintainers. • State of CvmFS within WLCG. • CvmFS Future Work Steve Traylen, CERN-IT. 2
  • 3. CvmFS Motivation • CvmFS is a Network File System – Designed with software distribution in mind. • Lots of small files. • Additions not constant but every few hours or days. • Minimize Distribution Delay • Files are typically accessed more than once. – Write in one location • Repository node. – Read in 100,000s of locations. Steve Traylen, CERN-IT. 3
  • 4. CvmFS Design • Indistinguishable from a real filesystem – Easy for the end user. • Security – File integrity is checked by every client on every file. • Standard Protocols and Software – Uses http (not s) everywhere as it is easy. – apache httpd, squid but whatever. – Standard linux fuse at the client. Steve Traylen, CERN-IT. 4
  • 5. CvmFS Deployed /cvmfs/repo/MyFile Shadow Tree: the one write Stratum 0 location. cvmfs_sysc, operates on all new files in repo, e.g MyFile. /repo/A345....de43b Public tree: contains hashed compressed files. Stratum 0 Web Server - only Stratum 1s ever connect. Stratum ones copy all new Stratum data with “cvmfs_replicate”. Stratum 1 Full Copy Stratum 1 Full Copy Geo separated and 1s fully redundant. SiteA OnDemand SiteB Partial CacheSquids Sites Batch Batch Steve Traylen, CERN-IT. 5
  • 6. Day in The Life of a File • Scenario: – Repository maintainer wants a file on all batch workers. • Steps – File publication , happens on repository maintainer node. – File retrieval, happens on all batch workers. Steve Traylen, CERN-IT. 6
  • 7. File Publication • Maintainer copies or creates file at stratum 0: – This is in the eventual correct path e.g, • /cvmfs/biomed.example.org/MyFile • Maintainer tests new file system – /cvmfs/biomed.example.org • Maintainer “commits” all new files - cvmfs_sync – Files are compressed and renamed to their sha1. – An SQLite db has a new record for MyFile added. Steve Traylen, CERN-IT. 7
  • 8. File Publication (2) /cvmfs/biomed.example.org/MyFile cvmfs_sync •http://example.org/biomed/12a..edf2 - Actual compressed MyFile •http://example.org/biomed/23f..ad22C - SQLite Database containing | /MyFile | 12a..edf2 | one record per file. •http://example.org/biomed/.cvmfspublished - A pointer to catalog Simple text file with catalog file name , 12a..edf2. • The .cvmpublished has a TTL of 15 minutes. • All other files have a TTL of 3 days. Steve Traylen, CERN-IT. 8
  • 9. File Retrieval via fuse. • CvmFS clients are a plugin in to fuse. – fuse intercepts all filesystem requests, • e.g stat, ls, cat , gcc, open, .... • cvmfs handles all file retrieval and presents file normally to the application. – a local area of disk is configured as disk cache. Steve Traylen, CERN-IT. 9
  • 10. File Retrieval (2) • Batch job wants the file – /cvmfs/biomed.examle.org/MyFile • cvmfs performs the following – Client downloads .cvmfspublished • This provides the file name “23f...ad22C” of sqlite catalog of the user required file paths. – Client downloads sqlite catalog • This provides the real on disk file name of ‘MyFile’, i.e 12a..edf2 – Client downloads data file ‘12a..edf2’ • fuse presents ‘12a..edf2’ as MyFile to batchjob. Steve Traylen, CERN-IT. 10
  • 11. What was the Point of • Why bother with all that complication – Why not serve files as is. • File system layout in sqlite database. – Operations like ls, stat, find . -type f are very quick. – The data is only downloaded as files are opened. • De-duplication, e.g MyFile and MySameFile. – All files are saved with name of their sha1. – The duplicates are just extra rows in sqlite db. • No point having two files the same in cache or downloading same file twice. – Cache slots never need to be overwritten with new version of file. Steve Traylen, CERN-IT. 11
  • 12. File Security/Integrity • Main risks – Files are being delivered via http. – Files may pass through 3rd party squids, ... • files from cern to cern sometimes go via BNL. • x509 keys and certs are generated. – public certificate is delivered in advance to all sites. – release machine signs the first file .cvmfspublished at cvmfs_sync time. • All files opened after this are located by sha1 name only and the sha1 is verified for each file. • This is the simplified version of what Steve Traylen, CERN-IT. 12
  • 13. CvmFS at Sites - Squid • CvmFS clients should not connect directly to stratum one servers. – A squid or other http proxy should be installed. • Can be a squid for a batch farm. • A university level squid. • A squid shared with another site. – Setting up two squids in redundant fashion is easy. • Client supports random and/or ordered lists of squids. • CvmFS clients are not blocked from Steve Traylen, CERN-IT. 13
  • 14. Squid Setup • A standard squid from OS vendor is perfectly good enough. A few configurations are important. – maximum_object_size - specifies max file size to cache. • default is 4MB , recommended 4GB. – cache_dir - specifies size of disk cache. • default is 100MB , recommended 50GB minimum. • Both values depend greatly on active total and individual file size in repository. Steve Traylen, CERN-IT. 14
  • 15. Squid Setup (2) • Site squids are contacted by all batch workers: • Following config’s are for large clusters. – max_filedesc - Increase maximum open sockets. • Default 1024, increase to 8192 • Verify usage with: squidclient mgr:info – Maximum number of file descriptors: 8192 Largest file desc currently in use: 2839 Number of file desc currently in use: 2753 – net.ipv4.neigh.default.gc_thresh* - arp table. Steve Traylen, CERN-IT. 15
  • 16. Squid Setup (3) • CvmFS clients support a list of squid servers. – Random list “SquidA|SquidB” • One site with two squid servers. – Ordered list ‘SquidSiteMine;SquidSiteOther’ • One site using its own squid in preference to another site’s squid server. • CvmFS clients move to next squid if files cannot be downloaded correctly. – Files are always checksummed after Steve Traylen, CERN-IT. 16
  • 17. Squid and Cache Digests • Cache digests allow a cluster of squids to work together. – A pair (or more) site squids or stratum one squids can benefit. • Squids peer from one another. – i.e A site with 3 site squid servers will only download each file once. After that each squid will fetch it first from an adjacent squid rather than going to the higher level to fetch the file. • http://wiki.squid-cache.org/SquidFaq/ Steve Traylen, CERN-IT. 17
  • 18. CvmFS at Sites - Client • Install CvmFS packages via http://cernvm.cern.ch/portal/ filesystem – Install guide present. – RHEL 5 and 6 packages, debian has been built from source. • Configure either with script (cvmfs_config setup) or by hand: – /etc/fuse.conf # Fuse Configuration • Allow other people to read fuse mount – /etc/auto.master # AutoFS configuration • Enable the /etc/auto.cvmfs • chkconfing cvmfs on && service cvmfs on • CvmFS clients default to enable e.g /cvmfs/ Steve Traylen, CERN-IT. 18
  • 19. CvmFS Client • CvmFS uses a default file and override configuration method. – /etc/cvmfs/default.conf is in the package – /etc/cvmfs/default.local is custom overrides. • Minimal changes to make: – Sites should specify a squid service for their site. • CVMFS_HTTP_PROXY=http://yoursquid:2138 – Sites should specify an ordered stratum Steve Traylen, CERN-IT. 19
  • 20. CvmFS Client • Cache location and size. – CVMFS_QUOTA_LIMIT=10000 (MB) – CVMFS_CACHE_BASE=/var/cache/ • Note the cache is exclusive to each repository. – A future version of CvmFS will share a cache across all repositories. Steve Traylen, CERN-IT. 20
  • 21. CvmFS Client • Per domain/repository overrides are also possible: – /etc/cvmfs/default.conf • global configuration from package. – /etc/cvmfs/default.local • global configuration from site admin. – /etc/cvmfs/domain.d/example.org.conf • configuration for *.example.org repos from package – /etc/cvmfs/domain.d/example.org.local • configuration for *.example.org repos from site admin – /etc/cvmfs/config.d/biomed.example.org.conf • configuration for biomed.example.org from package. – /etc/cvmfs/config.d/biomed.example.org.local Steve Traylen, CERN-IT. 21
  • 22. CvmFS Client • The previous richness of config allows for specials per repository - Use cases: – Repository A requires more cache space than default. • Currently 4GB is enough for LHC VOs but LHCb requires 6. – Repository B is not supported on all or different stratum one services. • Currently ams.cern.ch is only on CERN stratum one. Steve Traylen, CERN-IT. 22
  • 23. Debugging Clients • Dump resulting configuration, all those files make it complicated. – cvmfs_config showconfig • Enable lots of verbosity to a log file: – CVMFS_DEBUGLOG = /tmp/cvmfs.log • Files grows quickly so switch off. • Mount outside the auto mounter – mkdir /tmp/mnt mount -t cvmfs biomed /tmp/mnt • Check syslog – cvmfs dumps a stack trace on crash. Steve Traylen, CERN-IT. 23
  • 24. Interrogating Clients • When CvmFS file system is mounted it can be spoken to via a socket as root, e.g – cvmfs-talk -i atlas host info - determine which stratum one is being used. • Active host 0: http://cvmfs1.example.ch/opt/ biomed – The local cache can be inspected. • What space is pinned or can be purged. – The active site squid server can be found. • Are all my hosts using that remote squid server and not mine? Steve Traylen, CERN-IT. 24
  • 25. CvmFS at Stratum 1 • The stratum one level provides all the redundancy for the clients. • There should be several stratum ones at different sites. • WLCG has 5 stratum ones. 2 or 3 (or even one) can easily handle the current load of 70,000 clients providing site squids are used. – CERN’s stratum one peaks around 40 megabits. • Stratum ones update once per hour from stratum zero. Steve Traylen, CERN-IT. 25
  • 26. Stratum One Architecture Stratum 00 Stratum Stratum one replicates all files from stratum 0. It uses CvmFS meta data, i.e SQLite files to only download new Stratum 1 Backend files. Stratum one frontends are reverse proxies. i.e Stratum 1 Frontend Stratum 1 Frontend web servers that fetch and cache files from backend node. Site A Site B Site C • Number of sites cannot impact replication of stratum 0 to stratum 1. • Stratum 1 can be scaled up with more front-ends. Steve Traylen, CERN-IT. 26
  • 27. Stratum 1 downloads, Feb • Spike on 7th February caused by one batch cluster connecting directly with a bug. – More than trebled sum of all other traffic. – Site contacted, they changed their configuration. • Stratum 1 is vulnerable to this but plenty of capacity is available, it can Steve Traylen, CERN-IT. 27
  • 28. CvmFS at Stratum Zero • The stratum 0 is the one write location. • Typically a stratum zero is made up of – A large NFS or similar diskspace with two areas: • shadow tree /cvmfs/biomed.example.org – The write version of the repository • public tree /pub – The processed tree served via a web server. – One small virtual machine per repository. • Each repository must have its own dedicated node. • Write access to the repository controlled with login access to the node. Steve Traylen, CERN-IT. 28
  • 29. CvmFS Stratum Zero • Repository maintainer writes files to – /cvmfs/biomed.example.org • A log of all file operations are made. – This is done with a 3rd party kernel module - redirfs • Repository maintainer can now validate his installation and decide if he wants to publish. – Provides a window of opportunity to uncover mistakes, bad software, .... Steve Traylen, CERN-IT. 29
  • 30. Stratum Zero Advice • Stratum Zeros is the point where bad releases may have to be rolled back. – Once a bad release has been published it will be visible at all sites in your entire infrastructure possibly declaring your whole infrastructure useless. • Within WLCG stratum zero, filesystem snapshots are in place to allow a rollback. – Various mechanisms have been used, e.g • Netapp, LVM and ZFS snapshots have all been Steve Traylen, CERN-IT. 30
  • 31. Stratum Zero Failure • The stratum ones continue to serve all their existing files. • Clients will not notice in anyway that the stratum zero is missing. • During failure new writes to the repository can not be made. Steve Traylen, CERN-IT. 31
  • 32. Stratum Zero Security • Two x509 key pairs are involved: – Repository managers key. • Private key lives on repository manager machine • It is used to sign the .cvmfspublished file during a release of biomed.example.org. • Clients do not trust this signature in advance of release. – Stratum Zero managers key. • Private key lives offline , e.g on crypto card. • Public certificate is deployed to every single CvmFS client. – CvmFS clients trust this service managers key completely. Steve Traylen, CERN-IT. 32
  • 33. Stratum Zero Security(2) • Once per month a file (.cvmfswhitelist) is injected into biomed repository by the Stratum 0 manager. – The whitelist file is signed by the Stratum 0 manager and contains a list of repository manager identities. • The file states to the client: – Given you trust me please also trust these release manager machines for the next month. • The client checks the whitelist first to Steve Traylen, CERN-IT. 33
  • 34. Atlas Comments on CvmFS • Currently used for – Software both stable and nightly builds. – Conditions data – Around 0.5TB of files are served. • While CvmFS is recommended for sites it is not universally used yet. – Some sites unwilling/unable to install fuse clients. • policy, diskless, only nfs space or similar weirdness. – To use CvmFS at these sites they require both: Steve Traylen, CERN-IT. 34
  • 35. CvmFS Current/Future • Migration from automake to cmake. • MacOS client - available but no official release. • Shared cache on client between repositories. • A cvmfs plugin to parrot , i.e user space. • Server side to use AUFS for release changes. • AUFS = Advanced multilayered unification filesystem. Steve Traylen, CERN-IT. 35
  • 36. Support • A mailing list hosted at http://cern.ch/ egroups – cvmfs-talk@cern.ch • Bug tracker: – https://savannah.cern.ch/projects/cernvm/ • Source code migrating now. – Current Release - cern svn. – Devel - http://github.com/cvmfs • Release and documentation: – http://cernvm.cern.ch/portal/filesystem Steve Traylen, CERN-IT. 36
  • 37. Conclusions • CvmFS solves well the problem of file distribution to 100,000s of clients in a fast, efficient and secure way. • CvmFS is mission critical today for ATLAS, LHCb and shortly CMS. • It is easy to set up the client so long as fuse is acceptable. • The server side has been setup for other VOs outside WLCG in particular at SLAC and OSG. INFN and SARA have Steve Traylen, CERN-IT. 37

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n