Answer the question
In order to leave comments, you need to log in
How to force application to use storageclass local-storage?
Good afternoon!
I am doing according to the article
https://scalablesystem.design/ds101/kubernetes-ins...
Kubernetes version - 1.12
git clone https://github.com/kubernetes-incubator/kubespray.git
cd kubespray
cp -rfp inventory/sample inventory/ mycluster
cd inventory/mycluster/
declare -a IPS=(10.233.60.232 10.233.60.226 10.233.60.240)
CONFIG_FILE=inventory/mycluster/hosts.ini python3 contrib/inventory_builder/inventory.py ${IPS[@]}
pip install -r requirements.txt
Add to the end of inventory/mycluster/group_vars/k8s-cluster.yml
helm_version: "v2.9.1"
helm_enabled: true
docker_dns_servers_strict: no
kubeconfig_localhost: true
local_volume_provisioner_enabled: true
local_volume_provisioner_base_dir: /mnt/disks
local_volume_provisioner_mount_dir: /mnt/disks
local_volume_provisioner_storage_class: local-storage
kubectl --kubeconfig inventory/mycluster/artifacts/admin.conf get storageclass
NAME PROVISIONER AGE
local-storage kubernetes.io/no-provisioner 2m
cd ..
cat << EOF > test_pod.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: claim1
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Pod
metadata:
name: test-pod-with-pvc
spec:
volumes:
- name: test-pvc-storage
persistentVolumeClaim:
claimName: claim1
containers:
- name: test-container
image: kubernetes/pause
volumeMounts:
- name: test-pvc-storage
mountPath: /var/lib/www/html
EOF
kubectl --kubeconfig kubespray/inventory/mycluster/artifacts/admin.conf create -f test_pod.yaml
persistentvolumeclaim/claim1 created
pod/test-pod-with-pvc created
kubectl --kubeconfig kubespray/inventory/mycluster/artifacts/admin.conf describe pod test-pod-with-pvc
Name: test-pod-with-pvc
Namespace: default
Priority: 0
PriorityClassName: <none>
Node: <none>
Labels: <none>
Annotations: <none>
Status: Pending
IP:
Containers:
test-container:
Image: kubernetes/pause
Port: <none>
Host Port: <none>
Environment: <none>
Mounts:
/var/lib/www/html from test-pvc-storage (rw)
/var/run/secrets/kubernetes.io/serviceaccount from default-token-jm8rk (ro)
Conditions:
Type Status
PodScheduled False
Volumes:
test-pvc-storage:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: claim1
ReadOnly: false
default-token-jm8rk:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-jm8rk
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 2m (x25 over 4m) default-scheduler pod has unbound immediate PersistentVolumeClaims (repeated 3 times)
kubectl --kubeconfig kubespray/inventory/mycluster/artifacts/admin.conf get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
claim1 Pending 116m
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question