Home > Storage > PowerFlex > White Papers > Dell APEX Block Storage for Azure: PostgreSQL Deployment and Performance on Kubernetes > Prerequisites
Azure Linux VM image by default is created with a small size for ‘root’ and ‘/var’ file system partitions. Ensure the Azure Linux VMs should have enough free size available for ‘root’ and ‘/var’ file system. This size is important because when the ‘root’ and ‘/var’ file system hits its eviction threshold of 85%, then the pods get evicted due to Disk Pressure on the node. For more information, see Appendix A: How to extend the Linux file system by adding a new disk.
# kubectl get nodes
NAME STATUS ROLES AGE VERSION
sp-pgsql-k8s-master Ready control-plane 27d v1.27.0
sp-pgsql-k8s-worker-1 Ready <none> 27d v1.27.0
sp-pgsql-k8s-worker-2 Ready <none> 27d v1.27.0
sp-pgsql-k8s-worker-3 Ready <none> 27d v1.27.0
# kubectl get pods -n vxflexos
NAME READY STATUS RESTARTS AGE
vxflexos-controller-95b695fcf-8mr4k 5/5 Running 70 (21m ago) 27d
vxflexos-node-gqvs8 2/2 Running 14 (21m ago) 27d
vxflexos-node-np2c6 2/2 Running 14 (21m ago) 27d
vxflexos-node-v2gdh 2/2 Running 14 (21m ago) 27d
# kubectl create namespace postgres
# kubectl apply -f postgres-config.yaml -n postgres
# kubectl apply -f postgres-service.yaml -n postgres
# kubectl apply -f postgres-statefulset.yaml -n postgres
# kubectl get pods -n postgres -o wide
NAME READY STATUS RESTARTS AGE IP NODE
postgres-n-0 1/1 Running 0 81s 10.244.2.35 sp-pgsql-k8s-worker-2
postgres-n-1 1/1 Running 0 69s 10.244.3.29 sp-pgsql-k8s-worker-3
postgres-n-2 1/1 Running 0 62s 10.244.1.46 sp-pgsql-k8s-worker-1
# kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
k8s-420ac27622 1400Gi RWO Delete Bound postgres/postgres-data-postgres-n-2 vxflexos-xfs 3m40s
k8s-6ed3daa42c 1400Gi RWO Delete Bound postgres/postgres-data-postgres-n-1 vxflexos-xfs 3m46s
k8s-85e24c2d5d 1400Gi RWO Delete Bound postgres/postgres-data-postgres-n-0 vxflexos-xfs 3m58s
# kubectl get all -n postgresdb -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pod/postgres-7fbfd5f4c6-9p4zs 0/1 Unknown 0 11d <none> sp-pgsql-k8s-worker-2 <none> <none>
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
service/postgres NodePort 10.111.57.254 <none> 5432:32459/TCP 11d app=postgres
NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTOR
deployment.apps/postgres 0/1 1 0 11d postgres postgres:latest app=postgres
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
replicaset.apps/postgres-7fbfd5f4c6 1 1 0 11d postgres postgres:latest app=postgres,pod-template-hash=7fbfd5f4c6