SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Running Dspace
Technical overview, lessons learned, workflows
and essential skills
Alan Orth and Sisay Webshet
Dspace Ethiopia Interest Group Meeting
Addis Ababa, 28 October 2013
DSpace Instances
One server, two instances...
CGSpace

DSpace Test

Hosted at CGNET in California, USA
Instance Overview
CGSpace
(cgspace.cgiar.org)
● “Production”
● Should always be up &
stable
● Is the “reference”
implementation

DSpace Test
(dspacetest.cgiar.org)
● “Development”
● Changes to style,
functionality, DSpace etc
are tested here first
● Sometimes wiped clean
Two DSpaces, one server!
Living With Legacy Decisions...
CGSpace and DSpace Test on the same machine…
● In 2010 CGSpace had a fraction of the content,
users, etc, so it didn’t affect the running of the
system
● Not true anymore!
● 100s of 1000s of monthly views...
● Large assetstore, log files, RAM / CPU usage, etc
(Near) Future Plans
Separate instances on Amazon EC2!

cgspace.cgiar.org

dspacetest.cgiar.org
CGSpace Code Is 100% Open

Source code is on github: github.com/ilri/DSpace
How The Code Is Organized
Production code lives in the 3_x-prod branch; this
is stable, tested code. Updates (if any) come from
the development branch on Monday.
Development code lives in the 3_x-dev branch;
this is semi-tested code! Changes throughout the
week.
“Social Coding” on GitHub
● Anyone can “fork” the
code repository to their
own GitHub account
● Source code repositories
can share code via “pull
requests”
● Developers can comment
on changes and discuss
issues

GitHub “OctoCat”
“Pull request” from @mire introducing the CUA module
All changes were not created equal...
Workflow Lessons Learned
● Sending changes is good, but leaves the
burden of merging to me
● Sending patches is better, but requires sender
to know how to generate them
● Sending a pull request is best, but requires
sender knows how to use git, branches, etc
Go Forth And Fork!

… and send pull requests!
Scenario: Create A New Theme
Creating an XMLUI theme for a new community
Create community in DSpace (ie, 10568/38440)
Add custom metadata (ie, cg.subject.bioversity)
Add custom submission template (input-forms.xml)
Copy existing XMLUI theme (ie ILRI) as a reference, and
customize for center-specific metadata, look & feel, etc
5. Update search & browse indexes (dspace.cfg)
6. Update XMLUI config for new theme (xmlui.xconf)
1.
2.
3.
4.
DSpace Sysadmin Crashcourse
DSpace...
● is a Java application
● builds using maven and ant
● uses PostgreSQL as a database backend
● stores PDFs and other blobs in the filesystem
(“assetstore”)
● runs best on Linux
CGSpace Stack

Apache httpd

Apache Tomcat

PostgreSQL

Bitstreams

Debian GNU/Linux
Why Not Use Tomcat Directly?
Any sysadmin will tell you that working with Tomcat is a joy*.
Surprisingly**, these things are annoying in Tomcat:
● Virtual hosting
● SSL
● redirects
● caching and manipulating headers
*for some definitions of “joy”
**not surprising, actually
Essential Technical Skills
Managing a DSpace instance doesn’t require “programmers”
or “developers” (but it doesn’t hurt).
Mainly, you’ll need:
● Linux experience (Debian, CentOS, Ubuntu)
● Administration experience (web servers, log files, cron jobs,
security)
● Software development concepts (git, patches,
branching/merging)
Better lives through livestock
ilri.org

The presentation has a Creative Commons licence. You are free to re-use or distribute this work, provided credit is given to ILRI.

Contenu connexe

Tendances

Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Burak TUNGUT
 
Rich storytelling with Drupal, Paragraphs and Islandora DAMS
Rich storytelling with Drupal, Paragraphs and Islandora DAMSRich storytelling with Drupal, Paragraphs and Islandora DAMS
Rich storytelling with Drupal, Paragraphs and Islandora DAMSalxbrdg
 
02 beginning code first
02   beginning code first02   beginning code first
02 beginning code firstMaxim Shaptala
 
Kubernetes at Spreadshirt - First steps to production
Kubernetes at Spreadshirt - First steps to productionKubernetes at Spreadshirt - First steps to production
Kubernetes at Spreadshirt - First steps to productionJens Hadlich
 
Share point 2013 on azure
Share point 2013 on azureShare point 2013 on azure
Share point 2013 on azurePrabath Fonseka
 
Presentation: mongo db & elasticsearch & membase
Presentation: mongo db & elasticsearch & membasePresentation: mongo db & elasticsearch & membase
Presentation: mongo db & elasticsearch & membaseArdak Shalkarbayuli
 
SQL for Elasticsearch
SQL for ElasticsearchSQL for Elasticsearch
SQL for ElasticsearchJodok Batlogg
 
Search and analyze your data with elasticsearch
Search and analyze your data with elasticsearchSearch and analyze your data with elasticsearch
Search and analyze your data with elasticsearchAnton Udovychenko
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIOliver Busse
 
Windows server and docker
Windows server and dockerWindows server and docker
Windows server and dockergirish goudar
 
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин Владев
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин ВладевPlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин Владев
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин ВладевPlovDev Conference
 
Rapid prototyping using azure functions - A walk on the wild side
Rapid prototyping using azure functions - A walk on the wild sideRapid prototyping using azure functions - A walk on the wild side
Rapid prototyping using azure functions - A walk on the wild sideSamrat Saha
 
Introduction to elasticsearch
Introduction to elasticsearchIntroduction to elasticsearch
Introduction to elasticsearchhypto
 
Selecting the right persistent storage options for apps in containers Open So...
Selecting the right persistent storage options for apps in containers Open So...Selecting the right persistent storage options for apps in containers Open So...
Selecting the right persistent storage options for apps in containers Open So...bipin kunal
 
Cassandra
Cassandra Cassandra
Cassandra Pooja GV
 
AWS Fargate in practice. How to run containers without managing EC2 instances
AWS Fargate in practice. How to run containers without managing EC2 instancesAWS Fargate in practice. How to run containers without managing EC2 instances
AWS Fargate in practice. How to run containers without managing EC2 instancesMax Borysov
 

Tendances (19)

Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5
 
Mashing the data
Mashing the dataMashing the data
Mashing the data
 
Rich storytelling with Drupal, Paragraphs and Islandora DAMS
Rich storytelling with Drupal, Paragraphs and Islandora DAMSRich storytelling with Drupal, Paragraphs and Islandora DAMS
Rich storytelling with Drupal, Paragraphs and Islandora DAMS
 
02 beginning code first
02   beginning code first02   beginning code first
02 beginning code first
 
Entity cache
Entity cacheEntity cache
Entity cache
 
Kubernetes at Spreadshirt - First steps to production
Kubernetes at Spreadshirt - First steps to productionKubernetes at Spreadshirt - First steps to production
Kubernetes at Spreadshirt - First steps to production
 
Share point 2013 on azure
Share point 2013 on azureShare point 2013 on azure
Share point 2013 on azure
 
Presentation: mongo db & elasticsearch & membase
Presentation: mongo db & elasticsearch & membasePresentation: mongo db & elasticsearch & membase
Presentation: mongo db & elasticsearch & membase
 
MongoDB
MongoDBMongoDB
MongoDB
 
SQL for Elasticsearch
SQL for ElasticsearchSQL for Elasticsearch
SQL for Elasticsearch
 
Search and analyze your data with elasticsearch
Search and analyze your data with elasticsearchSearch and analyze your data with elasticsearch
Search and analyze your data with elasticsearch
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
Windows server and docker
Windows server and dockerWindows server and docker
Windows server and docker
 
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин Владев
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин ВладевPlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин Владев
PlovDev 2016: Оркестрация на контейнери с Kubernetes - Мартин Владев
 
Rapid prototyping using azure functions - A walk on the wild side
Rapid prototyping using azure functions - A walk on the wild sideRapid prototyping using azure functions - A walk on the wild side
Rapid prototyping using azure functions - A walk on the wild side
 
Introduction to elasticsearch
Introduction to elasticsearchIntroduction to elasticsearch
Introduction to elasticsearch
 
Selecting the right persistent storage options for apps in containers Open So...
Selecting the right persistent storage options for apps in containers Open So...Selecting the right persistent storage options for apps in containers Open So...
Selecting the right persistent storage options for apps in containers Open So...
 
Cassandra
Cassandra Cassandra
Cassandra
 
AWS Fargate in practice. How to run containers without managing EC2 instances
AWS Fargate in practice. How to run containers without managing EC2 instancesAWS Fargate in practice. How to run containers without managing EC2 instances
AWS Fargate in practice. How to run containers without managing EC2 instances
 

Similaire à Running DSpace: Technical overview, lessons learned, workflows and essential skills

OpenStack Cinder, Implementation Today and New Trends for Tomorrow
OpenStack Cinder, Implementation Today and New Trends for TomorrowOpenStack Cinder, Implementation Today and New Trends for Tomorrow
OpenStack Cinder, Implementation Today and New Trends for TomorrowEd Balduf
 
Provisioning Servers Made Easy
Provisioning Servers Made EasyProvisioning Servers Made Easy
Provisioning Servers Made EasyAll Things Open
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUlrich Krause
 
06 integrate elasticsearch
06 integrate elasticsearch06 integrate elasticsearch
06 integrate elasticsearchErhwen Kuo
 
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_SummaryHiram Fleitas León
 
Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansPeter Clapham
 
UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015Christopher Curtin
 
Introduction to Stacki - World's fastest Linux server provisioning Tool
Introduction to Stacki - World's fastest Linux server provisioning ToolIntroduction to Stacki - World's fastest Linux server provisioning Tool
Introduction to Stacki - World's fastest Linux server provisioning ToolSuresh Paulraj
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the BasicsUlrich Krause
 
Docker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionDocker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionBrennan Saeta
 
DrupalCampLA 2011: Drupal backend-performance
DrupalCampLA 2011: Drupal backend-performanceDrupalCampLA 2011: Drupal backend-performance
DrupalCampLA 2011: Drupal backend-performanceAshok Modi
 
12 core technologies you should learn, love, and hate to be a 'real' technocrat
12 core technologies you should learn, love, and hate to be a 'real' technocrat12 core technologies you should learn, love, and hate to be a 'real' technocrat
12 core technologies you should learn, love, and hate to be a 'real' technocratlinoj
 
Scala at Treasure Data
Scala at Treasure DataScala at Treasure Data
Scala at Treasure DataTaro L. Saito
 
The Why and How of Scala at Twitter
The Why and How of Scala at TwitterThe Why and How of Scala at Twitter
The Why and How of Scala at TwitterAlex Payne
 
GWT is Smarter Than You
GWT is Smarter Than YouGWT is Smarter Than You
GWT is Smarter Than YouRobert Cooper
 
CGSpace technical overview
CGSpace technical overviewCGSpace technical overview
CGSpace technical overviewILRI
 
Hosting Drupal on Amazon EC2
Hosting Drupal on Amazon EC2Hosting Drupal on Amazon EC2
Hosting Drupal on Amazon EC2Kornel Lugosi
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the BasicsUlrich Krause
 
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoStorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoAlluxio, Inc.
 

Similaire à Running DSpace: Technical overview, lessons learned, workflows and essential skills (20)

OpenStack Cinder, Implementation Today and New Trends for Tomorrow
OpenStack Cinder, Implementation Today and New Trends for TomorrowOpenStack Cinder, Implementation Today and New Trends for Tomorrow
OpenStack Cinder, Implementation Today and New Trends for Tomorrow
 
Provisioning Servers Made Easy
Provisioning Servers Made EasyProvisioning Servers Made Easy
Provisioning Servers Made Easy
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
06 integrate elasticsearch
06 integrate elasticsearch06 integrate elasticsearch
06 integrate elasticsearch
 
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary
[DBA]_HiramFleitas_SQL_PASS_Summit_2017_Summary
 
Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
 
Flexible compute
Flexible computeFlexible compute
Flexible compute
 
UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015
 
Introduction to Stacki - World's fastest Linux server provisioning Tool
Introduction to Stacki - World's fastest Linux server provisioning ToolIntroduction to Stacki - World's fastest Linux server provisioning Tool
Introduction to Stacki - World's fastest Linux server provisioning Tool
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
 
Docker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline ExecutionDocker & ECS: Secure Nearline Execution
Docker & ECS: Secure Nearline Execution
 
DrupalCampLA 2011: Drupal backend-performance
DrupalCampLA 2011: Drupal backend-performanceDrupalCampLA 2011: Drupal backend-performance
DrupalCampLA 2011: Drupal backend-performance
 
12 core technologies you should learn, love, and hate to be a 'real' technocrat
12 core technologies you should learn, love, and hate to be a 'real' technocrat12 core technologies you should learn, love, and hate to be a 'real' technocrat
12 core technologies you should learn, love, and hate to be a 'real' technocrat
 
Scala at Treasure Data
Scala at Treasure DataScala at Treasure Data
Scala at Treasure Data
 
The Why and How of Scala at Twitter
The Why and How of Scala at TwitterThe Why and How of Scala at Twitter
The Why and How of Scala at Twitter
 
GWT is Smarter Than You
GWT is Smarter Than YouGWT is Smarter Than You
GWT is Smarter Than You
 
CGSpace technical overview
CGSpace technical overviewCGSpace technical overview
CGSpace technical overview
 
Hosting Drupal on Amazon EC2
Hosting Drupal on Amazon EC2Hosting Drupal on Amazon EC2
Hosting Drupal on Amazon EC2
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the Basics
 
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and PrestoStorageQuery: federated querying on object stores, powered by Alluxio and Presto
StorageQuery: federated querying on object stores, powered by Alluxio and Presto
 

Plus de ILRI

How the small-scale low biosecurity sector could be transformed into a more b...
How the small-scale low biosecurity sector could be transformed into a more b...How the small-scale low biosecurity sector could be transformed into a more b...
How the small-scale low biosecurity sector could be transformed into a more b...ILRI
 
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...ILRI
 
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...ILRI
 
A training, certification and marketing scheme for informal dairy vendors in ...
A training, certification and marketing scheme for informal dairy vendors in ...A training, certification and marketing scheme for informal dairy vendors in ...
A training, certification and marketing scheme for informal dairy vendors in ...ILRI
 
Milk safety and child nutrition impacts of the MoreMilk training, certificati...
Milk safety and child nutrition impacts of the MoreMilk training, certificati...Milk safety and child nutrition impacts of the MoreMilk training, certificati...
Milk safety and child nutrition impacts of the MoreMilk training, certificati...ILRI
 
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseases
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseasesPreventing the next pandemic: a 12-slide primer on emerging zoonotic diseases
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseasesILRI
 
Preventing preventable diseases: a 12-slide primer on foodborne disease
Preventing preventable diseases: a 12-slide primer on foodborne diseasePreventing preventable diseases: a 12-slide primer on foodborne disease
Preventing preventable diseases: a 12-slide primer on foodborne diseaseILRI
 
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistance
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistancePreventing a post-antibiotic era: a 12-slide primer on antimicrobial resistance
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistanceILRI
 
Food safety research in low- and middle-income countries
Food safety research in low- and middle-income countriesFood safety research in low- and middle-income countries
Food safety research in low- and middle-income countriesILRI
 
Food safety research LMIC
Food safety research LMICFood safety research LMIC
Food safety research LMICILRI
 
The application of One Health: Observations from eastern and southern Africa
The application of One Health: Observations from eastern and southern AfricaThe application of One Health: Observations from eastern and southern Africa
The application of One Health: Observations from eastern and southern AfricaILRI
 
One Health in action: Perspectives from 10 years in the field
One Health in action: Perspectives from 10 years in the fieldOne Health in action: Perspectives from 10 years in the field
One Health in action: Perspectives from 10 years in the fieldILRI
 
Reservoirs of pathogenic Leptospira species in Uganda
Reservoirs of pathogenic Leptospira species in UgandaReservoirs of pathogenic Leptospira species in Uganda
Reservoirs of pathogenic Leptospira species in UgandaILRI
 
Minyoo ya mbwa
Minyoo ya mbwaMinyoo ya mbwa
Minyoo ya mbwaILRI
 
Parasites in dogs
Parasites in dogsParasites in dogs
Parasites in dogsILRI
 
Assessing meat microbiological safety and associated handling practices in bu...
Assessing meat microbiological safety and associated handling practices in bu...Assessing meat microbiological safety and associated handling practices in bu...
Assessing meat microbiological safety and associated handling practices in bu...ILRI
 
Ecological factors associated with abundance and distribution of mosquito vec...
Ecological factors associated with abundance and distribution of mosquito vec...Ecological factors associated with abundance and distribution of mosquito vec...
Ecological factors associated with abundance and distribution of mosquito vec...ILRI
 
Livestock in the agrifood systems transformation
Livestock in the agrifood systems transformationLivestock in the agrifood systems transformation
Livestock in the agrifood systems transformationILRI
 
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...Development of a fluorescent RBL reporter system for diagnosis of porcine cys...
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...ILRI
 
Practices and drivers of antibiotic use in Kenyan smallholder dairy farms
Practices and drivers of antibiotic use in Kenyan smallholder dairy farmsPractices and drivers of antibiotic use in Kenyan smallholder dairy farms
Practices and drivers of antibiotic use in Kenyan smallholder dairy farmsILRI
 

Plus de ILRI (20)

How the small-scale low biosecurity sector could be transformed into a more b...
How the small-scale low biosecurity sector could be transformed into a more b...How the small-scale low biosecurity sector could be transformed into a more b...
How the small-scale low biosecurity sector could be transformed into a more b...
 
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
 
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
Small ruminant keepers’ knowledge, attitudes and practices towards peste des ...
 
A training, certification and marketing scheme for informal dairy vendors in ...
A training, certification and marketing scheme for informal dairy vendors in ...A training, certification and marketing scheme for informal dairy vendors in ...
A training, certification and marketing scheme for informal dairy vendors in ...
 
Milk safety and child nutrition impacts of the MoreMilk training, certificati...
Milk safety and child nutrition impacts of the MoreMilk training, certificati...Milk safety and child nutrition impacts of the MoreMilk training, certificati...
Milk safety and child nutrition impacts of the MoreMilk training, certificati...
 
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseases
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseasesPreventing the next pandemic: a 12-slide primer on emerging zoonotic diseases
Preventing the next pandemic: a 12-slide primer on emerging zoonotic diseases
 
Preventing preventable diseases: a 12-slide primer on foodborne disease
Preventing preventable diseases: a 12-slide primer on foodborne diseasePreventing preventable diseases: a 12-slide primer on foodborne disease
Preventing preventable diseases: a 12-slide primer on foodborne disease
 
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistance
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistancePreventing a post-antibiotic era: a 12-slide primer on antimicrobial resistance
Preventing a post-antibiotic era: a 12-slide primer on antimicrobial resistance
 
Food safety research in low- and middle-income countries
Food safety research in low- and middle-income countriesFood safety research in low- and middle-income countries
Food safety research in low- and middle-income countries
 
Food safety research LMIC
Food safety research LMICFood safety research LMIC
Food safety research LMIC
 
The application of One Health: Observations from eastern and southern Africa
The application of One Health: Observations from eastern and southern AfricaThe application of One Health: Observations from eastern and southern Africa
The application of One Health: Observations from eastern and southern Africa
 
One Health in action: Perspectives from 10 years in the field
One Health in action: Perspectives from 10 years in the fieldOne Health in action: Perspectives from 10 years in the field
One Health in action: Perspectives from 10 years in the field
 
Reservoirs of pathogenic Leptospira species in Uganda
Reservoirs of pathogenic Leptospira species in UgandaReservoirs of pathogenic Leptospira species in Uganda
Reservoirs of pathogenic Leptospira species in Uganda
 
Minyoo ya mbwa
Minyoo ya mbwaMinyoo ya mbwa
Minyoo ya mbwa
 
Parasites in dogs
Parasites in dogsParasites in dogs
Parasites in dogs
 
Assessing meat microbiological safety and associated handling practices in bu...
Assessing meat microbiological safety and associated handling practices in bu...Assessing meat microbiological safety and associated handling practices in bu...
Assessing meat microbiological safety and associated handling practices in bu...
 
Ecological factors associated with abundance and distribution of mosquito vec...
Ecological factors associated with abundance and distribution of mosquito vec...Ecological factors associated with abundance and distribution of mosquito vec...
Ecological factors associated with abundance and distribution of mosquito vec...
 
Livestock in the agrifood systems transformation
Livestock in the agrifood systems transformationLivestock in the agrifood systems transformation
Livestock in the agrifood systems transformation
 
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...Development of a fluorescent RBL reporter system for diagnosis of porcine cys...
Development of a fluorescent RBL reporter system for diagnosis of porcine cys...
 
Practices and drivers of antibiotic use in Kenyan smallholder dairy farms
Practices and drivers of antibiotic use in Kenyan smallholder dairy farmsPractices and drivers of antibiotic use in Kenyan smallholder dairy farms
Practices and drivers of antibiotic use in Kenyan smallholder dairy farms
 

Dernier

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
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
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Dernier (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Running DSpace: Technical overview, lessons learned, workflows and essential skills

  • 1. Running Dspace Technical overview, lessons learned, workflows and essential skills Alan Orth and Sisay Webshet Dspace Ethiopia Interest Group Meeting Addis Ababa, 28 October 2013
  • 2. DSpace Instances One server, two instances... CGSpace DSpace Test Hosted at CGNET in California, USA
  • 3. Instance Overview CGSpace (cgspace.cgiar.org) ● “Production” ● Should always be up & stable ● Is the “reference” implementation DSpace Test (dspacetest.cgiar.org) ● “Development” ● Changes to style, functionality, DSpace etc are tested here first ● Sometimes wiped clean
  • 5. Living With Legacy Decisions... CGSpace and DSpace Test on the same machine… ● In 2010 CGSpace had a fraction of the content, users, etc, so it didn’t affect the running of the system ● Not true anymore! ● 100s of 1000s of monthly views... ● Large assetstore, log files, RAM / CPU usage, etc
  • 6. (Near) Future Plans Separate instances on Amazon EC2! cgspace.cgiar.org dspacetest.cgiar.org
  • 7. CGSpace Code Is 100% Open Source code is on github: github.com/ilri/DSpace
  • 8. How The Code Is Organized Production code lives in the 3_x-prod branch; this is stable, tested code. Updates (if any) come from the development branch on Monday. Development code lives in the 3_x-dev branch; this is semi-tested code! Changes throughout the week.
  • 9. “Social Coding” on GitHub ● Anyone can “fork” the code repository to their own GitHub account ● Source code repositories can share code via “pull requests” ● Developers can comment on changes and discuss issues GitHub “OctoCat”
  • 10. “Pull request” from @mire introducing the CUA module
  • 11. All changes were not created equal...
  • 12. Workflow Lessons Learned ● Sending changes is good, but leaves the burden of merging to me ● Sending patches is better, but requires sender to know how to generate them ● Sending a pull request is best, but requires sender knows how to use git, branches, etc
  • 13. Go Forth And Fork! … and send pull requests!
  • 14. Scenario: Create A New Theme Creating an XMLUI theme for a new community Create community in DSpace (ie, 10568/38440) Add custom metadata (ie, cg.subject.bioversity) Add custom submission template (input-forms.xml) Copy existing XMLUI theme (ie ILRI) as a reference, and customize for center-specific metadata, look & feel, etc 5. Update search & browse indexes (dspace.cfg) 6. Update XMLUI config for new theme (xmlui.xconf) 1. 2. 3. 4.
  • 15. DSpace Sysadmin Crashcourse DSpace... ● is a Java application ● builds using maven and ant ● uses PostgreSQL as a database backend ● stores PDFs and other blobs in the filesystem (“assetstore”) ● runs best on Linux
  • 16. CGSpace Stack Apache httpd Apache Tomcat PostgreSQL Bitstreams Debian GNU/Linux
  • 17. Why Not Use Tomcat Directly? Any sysadmin will tell you that working with Tomcat is a joy*. Surprisingly**, these things are annoying in Tomcat: ● Virtual hosting ● SSL ● redirects ● caching and manipulating headers *for some definitions of “joy” **not surprising, actually
  • 18. Essential Technical Skills Managing a DSpace instance doesn’t require “programmers” or “developers” (but it doesn’t hurt). Mainly, you’ll need: ● Linux experience (Debian, CentOS, Ubuntu) ● Administration experience (web servers, log files, cron jobs, security) ● Software development concepts (git, patches, branching/merging)
  • 19. Better lives through livestock ilri.org The presentation has a Creative Commons licence. You are free to re-use or distribute this work, provided credit is given to ILRI.