Local-path-provisioner

Overview

The source code and default configuration of the Building Block is available in our GitLab.

Local-Path-Provisioner

The Local-Path-Provisioner supports an easy way to handle persistent volumes on your kubernetes nodes.

A recommended resource overview is listed in the table below.

CPU / vCPU Memory
1 128MiB

No further activities need to be carried out in advance.

Adding the Building Block

Add the directory syseleven-local-path-provisioner to your control repository. Add a .gitlab-ci.yml to the directory with the following content:

include:
  - project: syseleven/building-blocks/helmfiles/local-path-provisioner
    file: JobDevelopment.yaml
    ref: 1.25.0
  - project: syseleven/building-blocks/helmfiles/local-path-provisioner
    file: JobStaging.yaml
    ref: 1.25.0
  - project: syseleven/building-blocks/helmfiles/local-path-provisioner
    file: JobProduction.yaml
    ref: 1.25.0

Remove environments you are not using by removing their include.

Required configuration

No confguration is required.

Usage

Node deployment

This example assumes that you have another node deployment without taints, and you want to deploy pxc-operator. If you haven't, please ensure that the PCX operator, and the local-path provisioner have matching taints as well.

  1. Create a deployment with the following configuration:
    1. Select a local storage flavor
      1. Replica count depending on your database cluster requirements (we recommend at least 3)
      2. Node labels
        • Key: pxc-cluster
        • Value: true
      3. Node taints
        • Key: pxc-cluster
        • Value: true
        • Effect: NoSchedule
  2. Deploy the local storage provisioner

PVC deployment

Local Path Provisioner will create storageClass local-path that can be used for creating PVCs. See Usage for examples.

Monitoring

Additional alertrules

  • None

Additional Grafana dashboards

None

Scaling Setup

no need for scaling setup necessary nor make any sense.

Limitations

  • No support for the volume capacity limit
  • No volume quotas - PV will always be the size to the entire disk
  • The underlying VM will break when you hit 100% usage
  • Pods may get evicted from the VM and will loose data in the process (because the data is only local to the VM)
  • No resizing
  • Data is not automatically migrated to other VMs

Release-Notes

Please find more infos on release notes and new features Release notes