KOBIL Shift-Operator configuration and deployment
Shift-Operator configuration and installation
Scope here is: Initial and sufficient configuration for the "shift-operator" metaconfiguration file "values.yaml" for installation of KOBIL Shift-Operator.
Necessary operations:
- pull the KOBIL Shift-Operator metaconfiguration-file "values.yaml"
- edit the KOBIL Shift-Operator metaconfiguration-file "values.yaml"
- deploy the KOBIL Shift-Operator running helm install
action
Pulling the KOBIL Shift-Operator Chart metconfiguration file "values.yaml"
-
You may download the full KOBIL Shift-Operator Chart package - and extracting this covering then the metaconfiguration-file "values.yaml" for KOBIL Shift in the root-directory
-
You may pull the KOBIL Shift-Operator "values.yaml" directly by running command:
helm show values kobil/shift-operator > ./shift-values.yaml
Editing the KOBIL Shift-Operator metaconfiguration file "values.yaml"
Editing the Shift-Operator "values.yaml" - major editing has to be done in the following sequence:
- add the
image pull secrets
to the target namespace where KOBIL Shift-Operator and Shift will be deployed to. - set the credentials for the private KOBIL Chart repository. This is required as the KOBIL Shift-Operator will download KOBIL Shift sub-services Charts during KOBIL Shift deployment processing.
- Configure further parameters as needed Shift-Operator Configuration
Create imagePullSecret
Ensure to have the imagePullSecret created first in the namespace before running the "helm install" for the KOBIL Shift Operator (see below section for imagePullSecret). Sample command to create the imagePullSecret is:
kubectl create secret -n \<shift_namespace\> docker-registry/registry-azure \
--docker-server=http://kobilsystems.azurecr.io \
--docker-username=your_user_token_name \
--docker-password=your_password
The image pull secrets covers the authorization to download the required images to the target namespace where the Shift-Operator is deployed to. In case using a local repository the "docker-server" is most likely not the internet facing KOBIL Image Repo but the local network accessible (custom) Image Repo service.
Part of "values.yaml" for KOBIL Shift-Operator
global:
# -- Image pull secrets added to pod spec generated by this chart.
imagePullSecrets:
# this is the preallocated secret for private KOBIL Image repository or your local repository access
- name: registry-azure
# -- Docker registry for KOBIL provided docker images
# this may cover local (proxy'd) image repo in customer environment
# default is KOBIL Image repository
registry: kobilsystems.azurecr.io
# -- Docker registry for public docker images
# this may cover local (proxy'd) image repo / per default direct load from internet
registryPublic: docker.io
Adding KOBIL Chart repository access credentials
To add the private KOBIL Chart repository access credentials, update the metaconfiguration editing the parameter "helmRepo". The KOBIL Shift-Operator will download KOBIL Shift (sub-services) Charts during processing. In case you are using locally proxied Chart- and Image-Repos - you may adopt this by the key 'global.registry' and key 'helmRepo.url' (for custom chart repo).
Add the KOBIL Helm Repo credentials
Part of "values.yaml" for KOBIL Shift-Operator
helmRepo:
url: https://charts.kobil.com
username: "" # add here KOBIL Chart repo access credentials
password: "" # add here KOBIL Chart repo access credentials
Deploying KOBIL Shift-Operator by "helm install" command
Deployment for KOBIL Shift-Operator is done via helm install
helm install <release_name> -f <metaconfiguration-file -n <shift_namespace> <repository-name> \
--version <version_number>
Samples:
# set version explicitly
helm install shift-operator -f ./shift-operator-values.yaml -n kobilshift kobil/shift-operator \
--version 0.12.0
# use the most current shift-operator chart for registered repository "kobil"
helm install shift-operator -f ./values.yaml kobil/shift-operator 2\>&1 | tee shift-operator.install.out
Verify the KOBIL Shift-Operator deployment
Once KOBIL Shift-Operator is deployed - find / check for the following:
# find deployments
kubectl get deployments -n <shift-namespace>
kubectl get crd | grep -i kobil # you should find at least servicegroups.shift.kobil.com
# find sub-services deployed by Shift-Operator
# once KOBIL Shift is deployed later listing the installed releases
helm list