<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.williams-net.org/index.php?action=history&amp;feed=atom&amp;title=Dynamic_Provisioning</id>
	<title>Dynamic Provisioning - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.williams-net.org/index.php?action=history&amp;feed=atom&amp;title=Dynamic_Provisioning"/>
	<link rel="alternate" type="text/html" href="https://wiki.williams-net.org/index.php?title=Dynamic_Provisioning&amp;action=history"/>
	<updated>2026-06-01T02:36:53Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://wiki.williams-net.org/index.php?title=Dynamic_Provisioning&amp;diff=32&amp;oldid=prev</id>
		<title>DrEdWilliams: Created page with &quot;Kubernetes needs a specific &#039;&#039;&#039;storageClass&#039;&#039;&#039; to allocate dynamically requested persistent storage.  As there is no driver that will take direct advantage of the BeeGFS files...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.williams-net.org/index.php?title=Dynamic_Provisioning&amp;diff=32&amp;oldid=prev"/>
		<updated>2019-08-03T01:26:38Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Kubernetes needs a specific &amp;#039;&amp;#039;&amp;#039;storageClass&amp;#039;&amp;#039;&amp;#039; to allocate dynamically requested persistent storage.  As there is no driver that will take direct advantage of the BeeGFS files...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Kubernetes needs a specific &amp;#039;&amp;#039;&amp;#039;storageClass&amp;#039;&amp;#039;&amp;#039; to allocate dynamically requested persistent storage.  As there is no driver that will take direct advantage of the BeeGFS filesystem (or even a common filesystem mounted on all workers), we have to set up an NFS server to share out a specific folder on /workspace so that it can be allocated appropriately.  This could be any system -- compute7 is the current stuckee.&lt;br /&gt;
&lt;br /&gt;
Create the folder on /workspace (just for documentation purposes)&lt;br /&gt;
 mkdir /workspace/PersistentStorage&lt;br /&gt;
 chmod 777 /workspace/PersistentStorage&lt;br /&gt;
&lt;br /&gt;
Install, enable, and start the NFS server and related daemons on compute7&lt;br /&gt;
 yum install nfs-utils libnfsidmap&lt;br /&gt;
 systemctl enable rpcbind&lt;br /&gt;
 systemctl enable nfs-server&lt;br /&gt;
 systemctl start rpcbind&lt;br /&gt;
 systemctl start nfs-server&lt;br /&gt;
 systemctl start rpc-statd&lt;br /&gt;
 systemctl start nfs-idmapd&lt;br /&gt;
&lt;br /&gt;
Specify the export location&lt;br /&gt;
 echo &amp;quot;/workspace/PersistentStorage 10.0.0.0/8(rw,sync,no_root_squash,fsid=1)&amp;quot; &amp;gt; /etc/exports&lt;br /&gt;
&lt;br /&gt;
Notify the server of the change in exported filesystems&lt;br /&gt;
 exportfs -r&lt;br /&gt;
&lt;br /&gt;
I&amp;#039;m using the nfs-client provisioner from the incubator tree on github -- it&amp;#039;s not official, but it is recognized&amp;lt;ref&amp;gt;https://github.com/kubernetes-incubator/external-storage/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To keep things clean, we will put this controller into the kube-system namespace ... this means modifying all the manifests mentioned below to include the &amp;#039;namespace: kube-system&amp;#039; line where appropriate ...&lt;br /&gt;
&lt;br /&gt;
Following the instructions in the README.md file, the installation is in three steps:&lt;br /&gt;
&lt;br /&gt;
* set up authentication (create the service account, cluster role, and cluster role binding)&lt;br /&gt;
 kubectl create -f deploy/auth/serviceaccount.yaml&lt;br /&gt;
 kubectl create -f deploy/auth/clusterrole.yaml&lt;br /&gt;
 kubectl create -f deploy/auth/clusterrolebinding.yaml&lt;br /&gt;
* modify the deployment.yaml file to set names&lt;br /&gt;
* modify the class.yaml file to set names&lt;br /&gt;
&lt;br /&gt;
These files have been checked into the [https://gitlab.williams-net.org/k8s/k8s-admin GitLab k8s-admin repository]. &lt;br /&gt;
&lt;br /&gt;
Now, issue this next command to make it the default storage class:&lt;br /&gt;
&lt;br /&gt;
 kubectl patch storageclass workspace -p &amp;#039;{&amp;quot;metadata&amp;quot;: {&amp;quot;annotations&amp;quot;:{&amp;quot;storageclass.kubernetes.io/is-default-class&amp;quot;:&amp;quot;true&amp;quot;}}}&amp;#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>DrEdWilliams</name></author>
	</entry>
</feed>