15
DevOps in the Digital Repository of Ireland

Dev ops in the Digital Repository of Ireland - Stuart Kenny

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Dev ops in the Digital Repository of Ireland - Stuart Kenny

DevOps in the Digital Repository of Ireland

Page 2: Dev ops in the Digital Repository of Ireland - Stuart Kenny

About DRI (http://www.dri.ie/)

● DRI is an interactive trusted digital repository for

contemporary and historical, social and cultural

data held by Irish institutions

● Exchequer funded; HEA PRTLI 5, €5.2M

● RIA (lead), NUIM, TCD, DIT, NUIG, NCAD

● Partners: academic, cultural, social, government

● Duration - Sep 2011 – Sep 2015

Page 3: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Objectives

● Trusted Digital Repository (TDR) ○ Provide reliable, long-term access to managed digital resources

Open Archival Information System (OAIS)

ISO16363 Trusted Digital Repository (TDR) Checklist

Certification (DSA)

● Central internet access point o Interactive multimedia tools

Page 4: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Organisation

User Interface

Data Management

Storage

configurable

bi-lingual

multi-modal

accessible

federated

secure

scalable

resilient

software architecture

tool-set

curation

preservation

Page 5: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Requirements

● Stakeholder interviews

○ Requirements

○ Policy

● Core DRI requirements

○ Multiple data types

○ Multiple metadata standards

○ Access controls

● Mapped to Cucumber features

Page 6: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Technology Choices

● Ruby on Rails (http://rubyonrails.org/)

● Git (http://git-scm.com/)

● Jenkins (http://jenkins-ci.org/)

● Cucumber (http://cukes.info/)

● Project Hydra (http://projecthydra.org/)

● Ansible (Dev/Test/Prod) (http://www.ansibleworks.com/)

● Vagrant (Dev) (http://www.vagrantup.com/)

● OpenNebula (Test/Prod) (http://opennebula.org/)

○ Originally FP7 Funded

Page 7: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Hydra

• Open-source repository

solution

• Open architecture

o Common core

o Solution bundles

• Community

o Developers and

adopters

Page 8: Dev ops in the Digital Repository of Ireland - Stuart Kenny

OpenNebula

● Open-source IaaS

○ Private cloud

o Hybrid cloud support

• Lightweight

o Management interface

o VM hosts

o Storage

• Community support

Page 9: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Development Practices

● Communication

○ ‘Stand-ups’

○ Teleconference

○ Face-to-Face

● Collaboration

○ Issue tracking

○ Version control

○ Continuous integration

● Consistent environment

○ Virtualisation

Page 10: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Development Environment

● Development scaffold

○ Automated

○ Repeatable

● Production like environment

○ OS

○ Package versions

● System dependencies

○ Fedora

○ Solr

○ Redis/Resque

○ MySQL

○ Ceph S3

○ Passenger

○ ClamAV, ffmpeg….

Page 11: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Deployment

● Local test suite

○ Cucumber/RSpec

● Continuous integration

○ Automated build and test

● Deployment

○ Automated with Ansible

○ Development/production

Page 12: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Deployment

Page 13: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Operations

● Preservation and disaster recovery

○ File fixity

○ Replication

● Auditing

○ Security (authorisation and authentication)

○ Malware scanning

○ Characterization

● DOIs

○ Minting, Takedowns, Updates

● User support

Page 14: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Issues

● Translating requirements to specification

○ Maintaining Cucumber steps

● Initial stakeholder interaction

● Hydra rapid development

● Institutional networking restrictions

● RHEL (rvm/ruby, ceph, haproxy...)

● Performance issues

○ Many moving parts

Page 15: Dev ops in the Digital Repository of Ireland - Stuart Kenny

Questions?

Team ● TCD - Jimmy Tang, Kathryn Cassidy, Peter Tiernan, Stuart Kenny

● NUIM - Damien Gallagher, Sinéad Redmond

● DIT - Eoin Kilfeather, Monica Harasimiuk, Anna Deegan