1
0

20 Commits

Author SHA1 Message Date
d8b8bd9a22 chore: add nodeSelectors to the charts 2018-09-28 14:26:42 +02:00
2a1e9eacbb Merge branch 'master' of p281392/molgenis-ops-docker-helm into master 2018-09-28 08:34:19 +02:00
395292cf37 updated nexus chart to 0.4.2 2018-09-28 08:33:35 +02:00
62bba3fcdd Merge branch 'master' of p281392/molgenis-ops-docker-helm into master 2018-09-28 08:32:51 +02:00
beeb59bbb3 updated probes 2018-09-28 08:31:29 +02:00
4b5f7deb16 Merge branch 'master' of p281392/molgenis-ops-docker-helm into master 2018-09-28 08:20:44 +02:00
a3d8adcdde version bump to 0.4.1 2018-09-28 08:19:36 +02:00
d0c02147b8 Merge branch 'master' of p281392/molgenis-ops-docker-helm into master 2018-09-28 08:19:08 +02:00
24781ff4ff updated label in ingress 2018-09-28 08:17:50 +02:00
9435220896 Merge branch 'master' of p281392/molgenis-ops-docker-helm into master 2018-09-28 08:03:38 +02:00
e220cb736e bumped version 2018-09-28 08:01:51 +02:00
3e78e896a3 Merge branch 'add-init-container' of p281392/molgenis-ops-docker-helm into master 2018-09-27 16:31:42 +02:00
dfd8872e58 Merge branch 'chore/jenkins-gitsource' of P129679/molgenis-ops-docker-helm into master 2018-09-27 16:28:20 +02:00
a9571dbdcb Merge branch 'master' of https://git.webhosting.rug.nl/molgenis/molgenis-ops-docker-helm into chore/jenkins-gitsource 2018-09-27 16:20:41 +02:00
7048bf3655 updated backup documnentation 2018-09-27 16:19:58 +02:00
fd86066cee added init container and chown for nexus files 2018-09-27 16:17:35 +02:00
364fe53114 Merge branch 'chore/upgrade-jenkins' of P129679/molgenis-ops-docker-helm into master 2018-09-27 16:10:52 +02:00
4f9c9866cf Merge branch 'fix/75' of P129679/molgenis-ops-docker-helm into master 2018-09-27 16:10:03 +02:00
525847fdf5 fix(molgenis): Recreate pods upon upgrade
The default upgrade strategy would cause multiple instances of MOLGENIS to run on the same database.
Use Recreate strategy instead.

Fixes #75
2018-09-27 11:46:11 +02:00
1b84f5ab6f chore(molgenis-jenkins): Configure extra traits for molgenis github source 2018-09-26 17:18:00 +02:00
14 changed files with 176 additions and 47 deletions

View File

@ -1,5 +1,7 @@
jenkins:
Master:
NodeSelector:
deployPod: "true"
HostName: jenkins.molgenis.org
ServiceType: ClusterIP
InstallPlugins:
@ -83,6 +85,17 @@ jenkins:
<trust class="org.jenkinsci.plugins.github_branch_source.ForkPullRequestDiscoveryTrait$TrustPermission"/>
</org.jenkinsci.plugins.github__branch__source.ForkPullRequestDiscoveryTrait>
<org.jenkinsci.plugins.scm__filter.GitHubCommitSkipTrait plugin="github-scm-trait-commit-skip@0.1.1"/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</org.jenkinsci.plugins.github__branch__source.GitHubSCMNavigator>
</navigators>
@ -132,6 +145,17 @@ jenkins:
<credentialsId>molgenis-jenkins-gogs-secret</credentialsId>
<traits>
<jenkins.plugins.git.traits.BranchDiscoveryTrait/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</source>
<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">
@ -185,6 +209,17 @@ jenkins:
<credentialsId>molgenis-jenkins-gogs-secret</credentialsId>
<traits>
<jenkins.plugins.git.traits.BranchDiscoveryTrait/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</source>
<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">
@ -238,6 +273,17 @@ jenkins:
<credentialsId>molgenis-jenkins-gogs-secret</credentialsId>
<traits>
<jenkins.plugins.git.traits.BranchDiscoveryTrait/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</source>
<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">
@ -291,6 +337,17 @@ jenkins:
<credentialsId>molgenis-jenkins-gogs-secret</credentialsId>
<traits>
<jenkins.plugins.git.traits.BranchDiscoveryTrait/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</source>
<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">
@ -344,6 +401,17 @@ jenkins:
<credentialsId>molgenis-jenkins-gogs-secret</credentialsId>
<traits>
<jenkins.plugins.git.traits.BranchDiscoveryTrait/>
<jenkins.plugins.git.traits.LocalBranchTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.LocalBranch">
<localBranch>**</localBranch>
</extension>
</jenkins.plugins.git.traits.LocalBranchTrait>
<jenkins.plugins.git.traits.UserIdentityTrait plugin="git@3.9.1">
<extension class="hudson.plugins.git.extensions.impl.UserIdentity">
<name>MOLGENIS Jenkins</name>
<email>molgenis+ci@gmail.com</email>
</extension>
</jenkins.plugins.git.traits.UserIdentityTrait>
</traits>
</source>
<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">
@ -423,7 +491,9 @@ jenkins:
Command: cat
WorkingDir: /home/jenkins
TTY: true
NodeSelector: {}
NodeSelector: {
deployPod: "true"
}
node:
Label: node-carbon
NodeUsageMode: EXCLUSIVE
@ -453,7 +523,9 @@ jenkins:
key: VAULT_ADDR
secretName: molgenis-pipeline-vault-secret
secretKey: addr
NodeSelector: {}
NodeSelector: {
deployPod: "true"
}
molgenis-it:
InheritFrom: molgenis
Label: molgenis-it
@ -515,7 +587,9 @@ jenkins:
limits:
cpu: "1"
memory: "512Mi"
NodeSelector: {}
NodeSelector: {
deployPod: "true"
}
#secret contains configuration for the kubernetes secrets that jenkins can access
secret:

View File

@ -2,7 +2,7 @@ apiVersion: v1
appVersion: "1.0"
description: Nexus stack for MOLGENIS
name: molgenis-nexus
version: 0.3.0
version: 0.4.2
sources:
- https://git.webhosting.rug.nl/molgenis/molgenis-ops-docker-helm.git
icon: https://git.webhosting.rug.nl/molgenis/molgenis-ops-docker-helm/raw/master/molgenis-nexus/catalogIcon-molgenis-nexus.svg

View File

@ -6,8 +6,44 @@ NEXUS repository for kubernetes to deploy on a kubernetes cluster with NFS-share
This chart will deploy:
- 1 NEXUS-nfs initialization container
We need this container to avoid permission issues on the NEXUS docker
- 1 NEXUS container
- 1 MOLGENIS-httpd container ()to proxy the registry and docker to one domain)
- 1 MOLGENIS-httpd container (to proxy the registry and docker to one domain)
## Backup restore
There are two steps in restoring the NEXUS.
- Database
- Blobstore
### Restore the database
Go to the commandline:
```bash
kubectl get pv
```
```bash
| NAME | CAPACITY | ACCESS | MODES | RECLAIM | POLICY | STATUS | CLAIM | STORAGECLASS | REASON | AGE |
| ---- | -------- | ------ | ----- | ------- | ------ | ------ | ----- | ------------ | ------ | --- |
| pvc-45988f55-900f-11e8-a0b4-005056a51744 | 30G | RWX | | Retain | Bound | molgenis-nexus/molgenis-nfs-claim | nfs-provisioner-retain | | | 33d |
| pvc-3984723d-220f-14e8-a98a-skjhf88823kk | 30G | RWO | | Delete | Bound | molgenis-test/molgenis-nfs-claim | nfs-provisioner | | | 33d |
```
The persistent volume is the one in the molgenis-nexus namespace.
Go to the NFS-provisioner to the path of the persistent volume:
```bash
ls -t --full-time | head -7 | xargs cp ../restore-from-backup/
```
### Restore the blobstore
You can copy the directory ```blobs``` to the target persistent volume ```/ blobs```.
You can now bring the NEXUS back up.
## Installing the Chart

View File

@ -20,6 +20,13 @@ spec:
creationTimestamp: null
spec:
restartPolicy: {{ .Values.nexus.restartPolicy }}
initContainers:
- name: nexus-nfs
image: busybox
command: ["sh", "-c", "chown -R 200:200 /nexus-data"]
volumeMounts:
- name: molgenis-nexus-nfs
mountPath: "/nexus-data"
containers:
- name: {{ .Values.nexus.name }}
image: "{{ .Values.nexus.image.repository }}:{{ .Values.nexus.image.tag }}"
@ -29,22 +36,22 @@ spec:
- containerPort: {{ .Values.nexus.port.docker }}
volumeMounts:
- name: molgenis-nexus-nfs
mountPath: "/nexus-data"
mountPath: /nexus-data
livenessProbe:
httpGet:
path: /
port: {{ .Values.nexus.port.ui }}
initialDelaySeconds: 90
initialDelaySeconds: 120
periodSeconds: 20
failureThreshold: 5
failureThreshold: 15
successThreshold: 1
readinessProbe:
httpGet:
path: /
port: {{ .Values.nexus.port.ui }}
initialDelaySeconds: 90
periodSeconds: 5
failureThreshold: 5
initialDelaySeconds: 120
periodSeconds: 20
failureThreshold: 15
successThreshold: 1
volumes:

View File

@ -36,17 +36,17 @@ spec:
httpGet:
path: /
port: {{ .Values.nexusProxy.port }}
initialDelaySeconds: 90
periodSeconds: 5
initialDelaySeconds: 1500
periodSeconds: 20
failureThreshold: 5
successThreshold: 1
readinessProbe:
httpGet:
path: /
port: {{ .Values.nexusProxy.port }}
initialDelaySeconds: 90
periodSeconds: 5
failureThreshold: 5
initialDelaySeconds: 150
periodSeconds: 20
failureThreshold: 15
successThreshold: 1
{{- with .Values.nodeSelector }}

View File

@ -5,7 +5,7 @@ kind: Ingress
metadata:
name: "{{ $.Release.Name }}-ingress"
labels:
app: httpd
app: {{ $.Values.nexusProxy.name }}
chart: "{{ $.Chart.Name }}-{{ $.Chart.Version }}"
release: "{{ $.Release.Name }}"
heritage: "{{ $.Release.Service }}"

View File

@ -13,7 +13,7 @@ nexus:
selector: nexus
restartPolicy: Always
image:
repository: sonatype/nexus3
repository: molgenis/nexus3
tag: latest
pullPolicy: Always
port:
@ -32,8 +32,8 @@ nexusProxy:
selector: nexus-proxy
restartPolicy: Always
image:
repository: registry.webhosting.rug.nl/molgenis/httpd
tag: lts
repository: molgenis/httpd
tag: latest
pullPolicy: Always
port: 80
service:

View File

@ -31,5 +31,7 @@ spec:
ports:
- containerPort: {{ .service.port }}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | indent 8 }}
{{- end }}

View File

@ -34,7 +34,9 @@ ingress:
- name: opencpu.molgenis.org
tls: []
nodeSelector: {}
nodeSelector: {
deployPod: "true"
}
tolerations: []

View File

@ -38,7 +38,7 @@ Parameter | Description | Default
`ui.image.repository` | Vault UI container image repository | `djenriquez/vault-ui`
`ui.image.tag` | Vault UI container image tag | `latest`
`ui.resources` | Vault UI pod resource requests & limits | `{}`
`ui.nodeSelector` | node labels for Vault UI pod assignment | `{}`
`ui.nodeSelector` | node labels for Vault UI pod assignment | `{deployPod: "true"}`
`ui.ingress.enabled` | If true, Vault UI Ingress will be created | `true`
`ui.ingress.annotations` | Vault UI Ingress annotations | `{}`
`ui.ingress.host` | Vault UI Ingress hostname | `vault.molgenis.org`

View File

@ -18,6 +18,10 @@ backupJob:
# schedule gives the cron schedule for the backup job
schedule: "0 12 * * 1"
vault-operator:
nodeSelector:
deployPod: "true"
###
# All of the config variables related to setting up the etcd-operator
# If you want more information about the variables exposed, please visit:
@ -44,6 +48,8 @@ etcd-operator:
restoreOperator:
image:
tag: v0.9.2
nodeSelector:
deployPod: "true"
ui:
name: "vault-ui"
@ -73,7 +79,8 @@ ui:
#requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
nodeSelector:
deployPod: "true"
vault:
auth: GITHUB
url: https://vault.vault-operator:8200

View File

@ -2,7 +2,7 @@ apiVersion: v1
appVersion: "1.0"
description: MOLGENIS - helm stack (in BETA)
name: molgenis
version: 0.4.2
version: 0.4.3
sources:
- https://git.webhosting.rug.nl/molgenis/molgenis-ops-docker-helm.git
icon: https://git.webhosting.rug.nl/molgenis/molgenis-ops-docker-helm/raw/master/molgenis/catalogIcon-molgenis.svg

View File

@ -17,6 +17,8 @@ spec:
matchLabels:
app: {{ template "molgenis.name" . }}
release: {{ .Release.Name }}
strategy:
type: Recreate
template:
metadata:
labels:

View File

@ -94,9 +94,8 @@ persistence:
enabled: true
retain: false
nodeSelector: {
nodeSelector:
deployPod: "true"
}
tolerations: []