​
DirectorySecurity Advisories
Sign In
Directory
local-volume-provisioner logo

local-volume-provisioner

Last changed

Get Started with Latest for Free
docker pull cgr.dev/chainguard/local-volume-provisioner

Need access to a specific version? Contact us.

Sign In for Updates

Get notified of upcoming product changes, critical vulnerability notifications and patches and more.

Sign In
Versions
Overview
Provenance
Specifications
SBOM
Vulnerabilities
Advisories

Static provisioner of local volumes

Download this Image

The image is available on cgr.dev:

docker pull cgr.dev/chainguard/local-volume-provisioner:latest

Usage

To be able to test the local volume provisioner, you need to have a Kubernetes cluster running. You can use k3d to create a local cluster.

Create a local cluster


k3d create cluster

Deploy the local volume provisioner

# creates the necessary StorageClass
kubectl apply -f kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/sig-storage-local-static-provisioner/master/deployment/kubernetes/example/default_example_storageclass.yaml

# creates the local volume provisioner
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/sig-storage-local-static-provisioner/master/deployment/kubernetes/example/default_example_provisioner_generated.yaml

# changes the provisioner image to the one you want to test
kubectl set image daemonset/local-volume-provisioner provisioner="cgr.dev/chainguard/local-volume-provisioner:latest"

Please ensure that the local volume provisioner is running before moving to the next step:

kubectl rollout status daemonset/local-volume-provisioner --timeout=120s

So, if everything is running, you should shell/exec into the nodes and do the following:

# Get server and worker node names from k3d, filtering by role
node_names=$(k3d node list -o json | jq -r '.[] | select(.role == "server" or .role == "agent") | .name')

# Loop over each node name and execute the commands
for node in $node_names; do
    echo "Configuring node: $node"

    # Create directory
    docker exec $node mkdir -p /mnt/fast-disks/vol1

    # Mount tmpfs
    docker exec $node mount -t tmpfs vol1 /mnt/fast-disks/vol1

    echo "Configuration complete for node: $node"
done

Once you have the local disks mounted, you should see the PVs created:

kubectl get pv

That's it! You have the local volume provisioner running and managing the local disks on your cluster.

Licenses

Chainguard Images contain software packages that are direct or transitive dependencies. The following licenses were found in the "latest" version of this image:

  • Apache-2.0

  • BSD-1-Clause

  • BSD-3-Clause

  • BSD-4-Clause-UC

  • CC-PDDC

  • GPL-1.0-only

  • GPL-2.0-only

For a complete list of licenses, please refer to this Image's SBOM.

Software license agreement

Related images

Category
application
kubernetes

Media KitContact Us
© 2024 Chainguard. All Rights Reserved.
Private Policy
Terms of Use

Product

Chainguard Images