OIS Operating Systems & Information Services Drupal at CERN Juraj Sucik JarosÅ‚aw Polok CERN IT May 2011 CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it OIS Drupal background • Free and open source web CMS • Based on PHP and (My)SQL database • Originally written by Dries Buytaert in Belgium in 2001 • Widely used (1.5% of all websites) • Over 7000 modules enhancing functionality available • Developed by community CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 2 OIS Content management • • • • • • CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it Design for content Standard look and feel Simple publishing for content creators Role based permissions Workflow Versioning 3 OIS Drupal at CERN • CERN community asked for it • People – 3 directly involved in building infrastructure – Module developers – CERN Webmasters • Drupal 6 pilot infrastructure in place since September 2010 • Drupal 7 in January • About 60 websites • Positive feedback from main users CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it – Experiments – Communications office – Departmental webmasters 4 OIS CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 5 OIS Drupal Support at CERN • Community support model – FAQ/Forum is maintained by the user community – Service desk 2nd level will use FAQs to give standard answers but 3rd level is forwarded to the forum and case closed • IT infrastructure centrally supported CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 6 OIS CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it Infrastructure 7 OIS Hardware Infrastructure • Hardware – production environment – 6 frontend systems (12 cores / 32 GB RAM / 1TB disk) – 2 backend systems ( 6 cores / 24 GB RAM / 6 TB disk) • Hardware – development environment – 2 frontend systems (12 cores / 32 GB RAM / 1TB disk) – 2 backend systems ( 6 cores / 24 GB RAM / 6 TB disk) CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 8 OIS Backend Servers • Database server – master-master mysql replication • File server – nfs export replicated (synced) • Ldap server – replicated • Webdav server – stripped down apache configuration • Cluster suite components CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 9 OIS Frontend Servers • Load balancer server – apache with mod_proxy_balancer • Web server – Apache / PHP / Shibboleth / memcached • Cluster Suite components CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 10 OIS Software Infrastructure • Software – Drupal: 7.0 – Operating system: Scientific Linux CERN 6 (SLC6) – Apache: 2.2 – PHP: 5.3 – Memcached: 1.4 – NFS v4 / TCP – Shibboleth: 2.4 – Red Hat Cluster Suite v. 3 – Mysql: 5.1 CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 11 OIS Cluster Suite • Cluster manages services – load balancer, web servers, nfs server, ldap servers and mysql servers – Failed services are automatically restarted or relocated to other cluster members – Web servers work in parallel and are restarted when failed – General “health” of each cluster member is monitored too: a misbehaving cluster member is rebooted automatically – Can loose 4 frontends and 1 backend CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 12 OIS Drupal site setup • Site separation enforced (mod_ruid2) – Each site is processed as different user id, does not have access to other sites data – All sites are running in a chroot’ed environment: no access to underlying operating system • Site management – – – – CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it Access to site files via secure webdav protocol Access to site database via phpMyAdmin Access to site log files Access to site management via http://cern.ch/SITENAME/_site 13 OIS Authentication • CERN SSO Authentication • Drupal role mapping to E-groups CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 14 OIS CDS Module • Import CDS record to Drupal page CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 15 OIS Indico module • Listing events of an Indico category for a given period of time CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 16 OIS Profiles module • User settings and nice name formatting CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 17 OIS Monitoring • Lemon monitoring system CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 18 OIS Drupal CERN Integration • • • • CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it Official CERN theme Webdav access to files Central backup service CERN Web Services 19 OIS Current status • Preparation for production – Tuning and testing the performance of the setup – Testing restore from backup – Testing failure scenarios • • • • CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it Issues with stability of Drupal 7 modules Investigating Varnish Investigating NAS storage Collaboration with IT/DB database experts to improve our mysql setup 20 OIS Future Plans • Define the change management for upgrades • Define the roadmap for migration of CERN official pages to Drupal CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 21 OIS • Juraj.Sucik@cern.ch • http://cern.ch/ENTICE CERN IT Department CH-1211 Geneva 23 Switzerland www.cern.ch/it 24