refactor: update README for clarity and remove setup script

This commit is contained in:
2026-05-24 20:04:12 +00:00
parent bc7a168851
commit 189fdab0bc
3 changed files with 49 additions and 322 deletions

View File

@@ -1,22 +1,10 @@
# NFS Client Provisioner
# NFS Storage
Provides shared NFS storage to the cluster by creating a StorageClass and PersistentVolume backed by an external NFS server. This is an infrastructure app — it has no pods or namespace, just cluster-scoped resources.
Connects the cluster to an external NFS server by creating a StorageClass and PersistentVolume. This is an infrastructure app — it has no pods or namespace, just cluster-scoped resources.
## Prerequisites
You need an NFS server already running and exporting a path. To set one up on a host:
```bash
./setup-nfs-host.sh <host> <media-path>
```
Example:
```bash
./setup-nfs-host.sh box-01 /srv/nfs
```
This SSHs into the host, installs `nfs-kernel-server`, and configures the export.
You need an NFS server already running and exporting a path. Most home NAS devices (Synology, TrueNAS, QNAP, Unraid) support NFS exports out of the box. If you're using a Linux server, see [Setting Up an NFS Server](#setting-up-an-nfs-server) below.
## Configuration
@@ -67,3 +55,48 @@ spec:
- ReadWriteMany — multiple pods can simultaneously read and write
- Configurable capacity — set PersistentVolume size via `storageCapacity`
- Retain policy — data is preserved when volumes are released
## Setting Up an NFS Server
Wild Cloud does not manage the NFS server itself — it only connects to one. Below are quick-start instructions for common setups.
### NAS Devices
Most NAS devices have NFS support built in:
- **Synology**: Control Panel > Shared Folder > Edit > NFS Permissions > Create rule allowing your cluster's subnet (e.g., `192.168.1.0/24`)
- **TrueNAS**: Shares > Unix Shares (NFS) > Add > select dataset, configure network access
- **QNAP**: Control Panel > Shared Folders > Edit Shared Folder Permission > NFS host access
- **Unraid**: Shares > select share > NFS Security Settings > set to Public or add allowed hosts
Note the IP/hostname and export path — those are what you'll enter as `host` and `mediaPath` in the NFS app config.
### Linux Server
Install the NFS server package, create the export directory, and add it to `/etc/exports`:
```bash
# Install (Debian/Ubuntu)
sudo apt-get install -y nfs-kernel-server
# Create the export directory
sudo mkdir -p /srv/nfs/media
sudo chmod 755 /srv/nfs/media
# Add to exports (allow all hosts on local network)
echo '/srv/nfs/media *(rw,sync,no_subtree_check,no_root_squash)' | sudo tee -a /etc/exports
# Apply and start
sudo exportfs -rav
sudo systemctl enable --now nfs-server
```
### Verifying the Export
From any machine on the network, confirm the export is visible:
```bash
showmount -e <nfs-server-ip>
```
You should see your export path listed. Once verified, add the NFS app, set `host` and `mediaPath` to match, and deploy.