The CloudBees CI on Kubernetes Workshop provides a detailed hands-on tutorial for installing and managing the CloudBees CI solution on Kubernetes to include best practices for running CloudBees CI in a production Kubernetes cluster.
A CloudBees CI deployment on Kubernetes primarily consists of workload and networking related resources. CloudBees CI Operations Center and all managed controllers are deployed as a Kubernetes StatefulSet, along with a Kubernetes Service and Ingress network resource.
Like a Deployment, a StatefulSet manages Pods that are based on an identical container spec. Unlike a Deployment, a StatefulSet maintains a sticky identity for each of their Pods. A Kubernetes StatefulSet provides persistent Pod identifiers that make it easier to match existing persistent volumes to new Pods that replace any that have failed.
A Kubernetes Service resource is an abstraction which defines a logical set of Pods and a policy by which to access them, usually determined by a selector.
A Kubernetes Ingress resource exposes HTTP and HTTPS routes from outside the cluster to Kubernetes Service resources.
Use Namespaces for Organization and Management of Resources
Use Resource Requests and Limits