Skip to content

devstart.md

Kim Oliver Drechsel edited this page Feb 2, 2023 · 6 revisions

This guide covers all your needs/tasks to migrate or setup a new application in our kuberentes.

All tasks marked with a 🔧 are doings for you

Where to start?

Make sure your container images are available for our new kubernets clusters. We provide you with a solution to pull from public registries (dockerhub/github container registry), as well as a solution to pull from our gitlab registry. (-> Gitlab CI)

After that, you need to provide configuration for your application in kuberentes. This is done in .yaml files in a git repository and picked up by argocd from there.

Key differences to openshift

  • different manifests (no deploymentconfig, buildconfig, route...)
  • there's no container registry like openshift had
  • we use gitops with argocd now
  • we have two clusters available

Gitlab

Container Registry

We don't have an openshift registry anymore, we advise you to use the gitlab registry instead. Practically you could use any available registry you choose, but we've already pre-configured default access to the private gitlab registry. If you manage that yourself, you are free to use any other public/private registry.

🆘 check the gitlab-ci section for help

Gitops with Gitlab

To pull the container-images from your project and to read the kubernetes manifest stored in your git application, we've created a technical user.

This user will access your project to commit as result of the CI process (update kustomize/helm resources). For that to work, he needs an personal access token (PAT) stored in your project.

🔧 You will have to invite him to your projects (Gitlab -> Project Information -> Members -> invite -> @tech-adorsys-kubermatic).

🔧 You will have to add an access token (Gitlab -> Settings -> CI/CD -> Variables -> CI_ACCESS_TOKEN (the token value you've to get from us/ops/devops)

Gitlab CI Setup

If you need to adapt your buildprocess or setup pipelined "Deployments" have a look at our sample Project

There you'll find information how to push to the gitlab registry and how to run kustomize, which will update your kubernetes manifest with your "latest" container image.

All the manifests reside in the kuberentes folder, which get deployed straight to kubernetes from there.

Openshift Resources

We can't provide you with a full featured solution to migrate of all your openshift objects to vanilla kubernetes. Here is a small overview what objects are not supported in kubernetes.

If you're using one of the following objects, you will have to modify them:

  • Deploymentconfigs -> Deployment
  • Buildconfigs -> CI of gitlab or github
  • Routes -> Ingress

Kubernetes Manifests

Add a folder in your repository where all your .yaml manifests reside. There is no Openshift UI anymore with a simple button install, you will have to write/copy manifests.

Integrate with ArgoCD

Create a ticket in Jira, write on slack or create an issue here. We'll setup an Application for you.