RDMA Data Transport integration with SEP Pipeline¶
This project defines the integration between various component repository on Kubernetes.
Helm¶
Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured Kubernetes resources.
All the charts are included in the folder “charts”. Every chart has the following structure:
Chart.yaml # A YAML file containing information about the chart
values.yaml # The default configuration values for this chart
chart/ # A directory containing any charts upon which this chart depends.
chart/templates/ # A directory of templates that, when combined with values,
# will generate valid Kubernetes manifest files.
# Chart.yaml
apiVersion: v1
appVersion: "1.0"
description: A Helm chart for deploying the Tango-Base on Kubernetes
name: tango-base
version: 0.1.0
# example of values
tmcprototype:
enabled: true
image:
registry: nexus.engageska-portugal.pt/tango-example
image: tmcprototype
tag: latest
pullPolicy: Always
Update chart settings.¶
In some cases you may want to alter the settings applied in the chart. E.g To set the Elastic index lifetime management policy to keep logs for 2 days, update values.yaml to the following:
elastic:
enabled: true
image:
registry: docker.elastic.co
image: elasticsearch/elasticsearch
tag: 7.4.2
pullPolicy: IfNotPresent
ilm:
rollover:
max_size: "1gb"
max_age: "2d" # Update here
delete:
min_age: "1d"
More information available here. Helm Glossare here <https://helm.sh/docs/glossary/>`_.
Testing the Pipeline¶
Todo
Available resources¶
The folder called “resources” is a collection of resources used for testing and for configuration.
Makefile targets¶
This project contains a Makefile which defines the following targets:
Makefile target | Description |
---|---|
vars | Display variables |
k8s | Which kubernetes are we connected to |
logs | POD logs for descriptor |
namespace | create the kubernetes namespace |
deploy | deploy the helm chart |
show | show the helm chart |
delete | delete the helm chart release |
gangway | install gangway authentication for gitlab (kube-system namespace) |
poddescribe | describe Pods executed from Helm chart |
podlogs | show Helm chart POD logs |
help | Show the help summary |
Ansible¶
It is possible to setup a local SKAMPI environment using the ansible playbook available here.
RDMA Data Transport integration with SEP Pipeline¶
The following are a set of instructions of running the RDMA Data Transport integration with SEP Pipeline on Kubernetes, and has been tested on k8s v1.17.3 on Ubuntu 18.04.