Project

General

Profile

D64 OpenAIRE Maintenance Report » History » Version 64

Marek Horst, 16/12/2016 06:26 PM

1 1 Marek Horst
h1. D6.4 OpenAIRE Maintenance Report (v1, 9th of December 2016)
2
3
{{toc}}
4
5
h2. Overview
6
7 37 Marek Horst
This document contains information about the deployment, status of OpenAIRE2020 services and content, and the history of major modifications of the system hosted at ICM, Poland. Zenodo repository is hosted at CERN, Switzerland.
8 1 Marek Horst
9
The official maintenance of the OpenAIRE2020 services began on January 1st, 2015 when the project started.
10
11 37 Marek Horst
*TODO: elaborate the following*
12 18 Alessia Bardi
The deliverable will consist in a high-level report on the status of 
13
* OpenAIRE workflows (CNR),
14
* services (ICM), 
15 30 Marek Horst
* and Information Space (UNIBI).
16 1 Marek Horst
17 18 Alessia Bardi
h2. Information Space
18 1 Marek Horst
19 53 Marek Horst
The OpenAIRE [[Core Data Model]] comprises the following interlinked entities: 
20
* results ( in form of publications, datasets and patents)
21
* persons
22
* organisations
23
* funders
24
* funding streams
25
* projects
26
* data sources (in form of institutional, thematic, and data repositories, Current Research Information Systems (CRIS), thematic and national aggregators, publication catalogues and entity registries)
27 43 Jochen Schirrwagen
28 56 Marek Horst
h3. Content Status
29
30
First table presents numbers for different InformationSpace main entities and fulltexts:
31
32
|*data type*|*count*|
33
|publication metadata|17460368|
34
|dataset metadata|3226586|
35
|projects|653268|
36
|organizations|64591|
37
|authors|16188328|
38
|EuropePMC XML fulltext|1574358|
39
|PDF fulltext|2227458|
40
41
Second table provides numbers related to inferences generated by IIS:
42
43
|*inference type*|*count*|
44
|datasets matched|88610|
45
|projects matched|351302|
46
|software urls references|21481|
47
|protein db references|196462|
48
|research initiatives references|7294|
49
|documents classified|2405869|
50
|similar documents found|164602477|
51
|citations matched by reference text|11390293|
52
|citations matched by id|3929053|
53
54
Both tables are based on IIS report generated on November 20, 2016 for OpenAIRE production infrastructure.
55
56
h3. Funders
57
58 60 Marek Horst
Table below presents number of publications funded by different funders:
59 56 Marek Horst
60 60 Marek Horst
|*funder/funding*|*count*|
61
|EC - FP7|195151|
62
|EC - H2020|1782|
63
|FCT|23849|
64
|WT|16108|
65
|NSF (US)|119550|
66
|NHMRC (AU)|5785|
67
|ARC (AU)|8053|
68 56 Marek Horst
69 60 Marek Horst
Presented numbers are based on production infrastructure state as of December 14, 2016. 
70 56 Marek Horst
71 47 Jochen Schirrwagen
h3. Data Sources
72 48 Jochen Schirrwagen
73 1 Marek Horst
Data sources in OpenAIRE are divided in: 
74 57 Jochen Schirrwagen
* data providers (~805) OpenAIRE continuously collects information from and need to comply with the "OpenAIRE Guidelines":https://guidelines.openaire.eu
75
* data sources (~6562) where metadata are collected from compatible data providers (usually aggregators) and represented in the OpenAIRE portal as links to the publications and datasets (_downloadFrom_).
76 1 Marek Horst
77 51 Jochen Schirrwagen
The table below presents number of data sources grouped by OpenAIRE compatibility level and data source type:
78 52 Marek Horst
79 49 Jochen Schirrwagen
|*data source type*|*compatibility*|*count*|
80 20 Jochen Schirrwagen
|institutional repository |openaire-3.0 |122 |
81 18 Alessia Bardi
| |openaire-2.0+ |103 |
82 55 Marek Horst
| |openaire-2.0 |10 |
83
| |openaire-basic |252 |
84 45 Jochen Schirrwagen
|thematic repository |openaire-3.0 |5 |
85
| |openaire-2.0+ |9 |
86 1 Marek Horst
| |openaire-basic |22 |
87
|other publication repository |openaire-3.0 |8 |
88 18 Alessia Bardi
| |openaire-2.0+ |1 |
89 20 Jochen Schirrwagen
| |openaire-2.0 |2 |
90
| |openaire-basic |34 |
91 1 Marek Horst
|data repository |openaire-data-2.0 |11 |
92 55 Marek Horst
|publication repository aggregator |openaire-3.0 |5 |
93
| |openaire-2.0 |1 |
94 29 Marek Horst
| |openaire-basic |7 |
95
|data repository aggregator |openaire-data |1 |
96
|journals |openaire-3.0 |71 |
97
| |openaire-2.0 |2 |
98
| |openaire-basic |77 |
99
|journal aggregator / publisher |openaire-3.0 |4 |
100
| |openaire-basic |26 |
101
| |proprietary |1 |
102
|publication catalogue |proprietary |12 |
103
|repository registries|proprietary|2 |
104 1 Marek Horst
|funder databases |proprietary |8 |
105
106 30 Marek Horst
The number of data sources is based on the OpenAIRE-index from December 15, 2016.
107
108
h3. Zenodo Content Status
109
110
|*data type*|*count or size*|
111
|records|96771|
112 1 Marek Horst
|managed files|181778|
113 30 Marek Horst
|files total size|8TB|
114
115 52 Marek Horst
Presented numbers are based on Zenodo repository status on December 14, 2016.
116 18 Alessia Bardi
117
h2. [[OpenAIRE workflows]]
118
119
The OpenAIRE aggregation system is based on the "D-NET software toolkit":http://www.d-net.research-infrastructures.eu/. D-NET is a service-oriented framework specifically designed to support developers at constructing custom aggregative infrastructures in a cost-effective way. D-NET offers data management services capable of providing access to different kinds of external data sources, storing and processing information objects of any data models, converting them into common formats, and exposing information objects to third-party applications through a number of standard access API. Most importantly, D-NET offers infrastructure enabling services that facilitate the construction of domain-specific aggregative infrastructures by selecting and configuring the needed services and easily combining them to form autonomic data processing workflows. 
120
121
The Enabling Layer contains the Services supporting the application framework. These provide functionalities such as Service registration, discovery, subscription and notification and data transfer mechanisms through ResultSet Services. Most importantly, these Services are configured to orchestrate Services of other layers to fulfil the OpenAIRE specific requirements and implement the *[[OpenAIRE workflows]]*.
122
123
h2. Services
124
125
h3. Software life-cycle
126
127
h4. D-NET services
128 1 Marek Horst
129
The D-NET services are shipped as web applications and deployed on the tomcat application server (v7.0.52) on three distinct systems: dev, beta, production. To support the deployment process all the software artifacts are automatically built on a continuous integration system ("Jenkins":https://ci.research-infrastructures.eu) and hosted on a dedicated maven repository ("nexus":http://maven.research-infrastructures.eu/nexus), while webapp builds are made available via "http server":http://ppa.research-infrastructures.eu/ci_upload. The mentioned tools supporting the software lifecycle are maintained by CNR.
130
131
The D-NET services deployment is performed in subsequent stages:
132
* The development infrastructure plays the role of test bench for the integration of the software developed by different institutions. It is maintained by CNR and runs mostly un-released code and contains mock or subsets of the data available on the production system.
133
* The beta infrastructure runs only released code. It is maintained by ICM and consists of the final integration stage where all the system workflows are tested on the real data (not necessarily the same data as the production system) before making them available to the production system. Although the software running on the beta system is not yet production ready, its portal is publicly accessible in order to showcase new features and data.
134
* The production infrastructure is maintained by ICM and runs only code that was tested on the beta system.
135 18 Alessia Bardi
136 1 Marek Horst
D-NET backend services are packed in four different web applications, each of them running on a dedicated tomcat instance.
137 18 Alessia Bardi
138 1 Marek Horst
h4. Information Inference Service
139 26 Marek Horst
140 59 Marek Horst
"Information Inference Service":https://github.com/openaire/iis is an oozie application providing set of inference algorithms deployed on Hadoop cluster. Each new IIS release is deployed into unique, dedicated HDFS location. This way different IIS versions can be utilized by different D-Net environments: beta and production. 
141 1 Marek Horst
142 59 Marek Horst
Formerly IIS was being deployed on CDH4 cluster. Since October 1st, 2015 dedicated "cdh5 branch":https://github.com/openaire/iis/commits/cdh5 was created where new SPARK modules were introduced and existing modules were optimized. On November 20, 2016 for the first time all inferences in production infrastructure were generated by IIS deployed on new CDH5 OCEAN cluster. Both stability and major performance increase were noticed.
143
144 63 Marek Horst
Currently IIS heavily depends on the following technologies:
145
* "Apache Avro":https://avro.apache.org/ hdfs data serialization
146
* "Apache Hadoop":http://hadoop.apache.org/ framework for distributed computing
147 64 Marek Horst
* "Apache Oozie":http://oozie.apache.org/ workflow definitions
148 63 Marek Horst
* "Apache Pig":https://pig.apache.org transformers, documents similarity
149
* "Apache Spark":http://spark.apache.org affiliation and citation matching algorithms
150
* "Cermine":https://github.com/CeON/CERMINE metadata and text extraction from PDF documents
151
* "Madis":https://github.com/madgik/madis documents classification and reference extraction algorithms
152
153 1 Marek Horst
"Continuous Integration System":http://ci.ceon.pl/view/IIS/ hosted @ICM allows both building IIS artifacts and running full suite of integration tests which are triggered nightly.
154 59 Marek Horst
155 63 Marek Horst
More details on service versioning and deployment can be found on "IIS versioning and deployment":https://issue.openaire.research-infrastructures.eu/projects/openaire/wiki/IIS_versioning_and_deployment wiki page.
156 18 Alessia Bardi
157 1 Marek Horst
h4. Portal
158 23 Marek Horst
159
OpenAIRE portal is hosted at ICM. It uses Joomla! 3.6.2, a free dynamic portal engine and content management system (CMS).
160
161
The Joomla! depends on other upstream applications:
162
163
* Apache 2.4.7
164
* PHP 5.5.9
165
* MySQL 5.5.53
166 1 Marek Horst
* OpenLDAP 2.4.31
167 18 Alessia Bardi
168 1 Marek Horst
h4. Zenodo
169
170
Zenodo repository employs an instance of the Invenio software, developed by CERN.
171 31 Marek Horst
172
Repository is deployed in a production system (https://zenodo.org) and a QA system (https://sandbox.zenodo.org). In total the two systems are running on 30 VMs hosted in CERNs OpenStack infrastructure. All machines are configured using Puppet and are running on top of CERN CentOS 7.2.
173
174
Zenodo/Invenio depends on the following applications:
175
- HAProxy for load balancing
176
- Nginx for serving static content and proxying request to application server
177
- UWSGI as application server for Zenodo/Invenio application
178
- Redis for memory cache
179
- RabbitMQ as message broker
180
- Celery as distributed task queue
181
- PostgreSQL as database
182
- Elasticsearch as search engine
183
184 1 Marek Horst
Deployment process is described at http://zenodo.readthedocs.io/projectlifecycle.html#release-process
185 33 Marek Horst
186
See https://github.com/zenodo/zenodo/commits/production for changes to Zenodo production system (does not include changes to Invenio modules).
187 35 Marek Horst
188
Zenodo repository was relaunched on Invenio v3 alpha on September 12, 2016.
189 18 Alessia Bardi
190 1 Marek Horst
h3. Infrastructure services
191 18 Alessia Bardi
192 1 Marek Horst
Because OpenAIRE2020 services are a continuation and incremental extension of the services already present that resulted from OpenAIRE+ project, so they are still hosted on that same machines. More details are available at "OpenAIRE+ WP5 Maintenance Report":http://wiki.openaire.eu/xwiki/bin/view/OpenAIREplus%20Specific/WP5%20Maintenance%20Report.
193 18 Alessia Bardi
194 1 Marek Horst
h4. Hadoop clusters
195 18 Alessia Bardi
196 1 Marek Horst
h5. DM hadoop cluster
197
198
CDH version: @cdh4.3.1@
199
200
h5. IIS hadoop cluster
201 24 Marek Horst
202
There were two IIS clusters deployed:
203 39 Marek Horst
* old CDH4 IIS cluster, version @cdh4.3.1@, in operation until December 9, 2016 
204 1 Marek Horst
* new CDH5 IIS cluster deployed on March 22, 2016 in OCEAN infrastructure, supports MRv2 on YARN and SPARK
205 24 Marek Horst
206
CDH5 cluster version history:
207 27 Marek Horst
** @5.5.2@ deployment on March 22, 2016
208
** @5.5.2 -> 5.7.5@ upgrade on November 30, 2016
209 24 Marek Horst
** @5.7.5 -> 5.9.0@ upgrade on December 8, 2016
210 1 Marek Horst
211
h4. Databases
212 28 Marek Horst
213
|_database type_|_usage_|_version_|
214 24 Marek Horst
| postgress | statistics | @9.1.23@ |
215
| postgress | DNet services | @9.3.14@ |
216
| mongodb | DNet services | @3.2.6@ |
217 1 Marek Horst
| virtuoso | LOD | @7.2@ |
218 41 Marek Horst
219 18 Alessia Bardi
h4. Piwik analytics platform
220 24 Marek Horst
221
Currently deployed Piwik version: @2.17.1@, since December 6, 2016.
222 40 Marek Horst
223 24 Marek Horst
h4. ownCloud filesync platform
224 40 Marek Horst
225 18 Alessia Bardi
Deployed at https://box.openaire.eu. Current version: @8.2.7@, since October 19, 2016.
226 1 Marek Horst
227 22 Marek Horst
h3. Architectural changes
228 1 Marek Horst
229 58 Marek Horst
Detailed list of all administrative operations undertaken @ICM is available on [[D64_Servers_Administration_Operations_Changelog|changelog for servers administration operations]] wiki page.
230 18 Alessia Bardi
231 62 Marek Horst
h4. Introducing CDH5 IIS cluster hosted in ICM OCEAN infrastructure
232 1 Marek Horst
233
Slave node specification:
234
* Huawei RH1288 V3
235
* CPU: 2x Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz (24 cores, 48 threads)
236
* RAM: 128GB
237
* HDD: 4x SATA 6TB 7.2K RPM (HDFS)
238
239
Cluster summary (16 slaves):
240
* CPU: 384 cores, 768 threads
241
* RAM: 2048GB
242
* HDD: 384TB (HDFS)
243
244
YARN available resources:
245
* vcores: 640
246
* memory: 1.44TB
247 18 Alessia Bardi
* HDFS: 344TB
248 1 Marek Horst
249
h4. Incorporating resources from old CDH4 IIS cluster into existing DM CDH4 cluster
250 25 Marek Horst
251 1 Marek Horst
This task was possible after shutting down old IIS CDH4 cluster what happened on December 9, 2016.
252 25 Marek Horst
253
h4. Deploying DNet postgress and mongodb databases on separate machines
254
255
Separating @openaire-services@ database instances into dedicated ones (since June 27, 2016):
256
* @openaire-services-postgresql@
257
* @openaire-services-mongodb@
258 34 Marek Horst
259 1 Marek Horst
h4. Updating Zenodo repository infrastructure at CERN
260 34 Marek Horst
261
Several architectural changes were introduced in CERN's infrastructure:
262
* changed storage backend from OpenAFS to CERN EOS (18 PB disk cluster) for better scalability
263
* changed from self-managed MySQL database to CERN Database Team managed PostgreSQL database
264
* deployment of Elasticsearch clusters (6 VMs)
265
* SLC to CentOS 7 on all 30 VMs
266 1 Marek Horst
267
h3. System downtimes
268 36 Marek Horst
269
h4. @ICM
270 1 Marek Horst
271 36 Marek Horst
* [planned] November 14, 2016, 2 hours. #2423 dealing with Linux Dirty COW vulnerability: kernel upgrade, OpenAIRE services restart.
272
273
h4. @CERN
274
275
* [unplanned] September 16, 2016, 3 hours. Preparation of a new load balancer caused an automatic update of CERN outerperimeter firewall that automatically closed access to the operational load balancers.
276
* [planned] September 12, 2016, 8 hours. Complete migration from old infrastructure to new infrastructure
277 1 Marek Horst
* minor incidents until September 12, 2016 due to overload of the legacy system