A few months after our first NetApp StorageGRID Webscale PoC we came back for another PoC. This time: Virtual Appliances on VMware vSphere. A perfect solution for small environments and if you already have a virtual environment. After modifying some scripts, the deployment was really easy and fast: a 5-Node cluster including Gateway- and Admin-Node in about one hour.
First of all, you need to modify the deployment scripts for your needs. Here is a working example for virtual Cluster with 5 Storage Nodes and one Gateway Node and one Admin Node. All nodes are in the same subnet for testing:
deploy.ini:
OVFTOOL_ARGUMENTS = --powerOffTarget --overwrite --powerOn --noSSLVerify --diskMode=thin --datastore='datastore01' SOURCE = /root/StorageGRID-Webscale-11.0.1/vsphere TARGET = vi://vcenter.example.com/Datacenter/host/Cluster-A USERNAME= user@vsphere.local PASSWORD= xxxxx GRID_NETWORK_TARGET = Network_1 GRID_NETWORK_MASK = 255.255.255.0 GRID_NETWORK_GATEWAY = 10.10.10.1 ADMIN_NETWORK_TARGET = Network_1 ADMIN_NETWORK_CONFIG = DISABLED ADMIN_NETWORK_MASK = 255.255.255.0 ADMIN_NETWORK_ESL = 10.10.10.0/24, 10.10.20.0/24 CLIENT_NETWORK_TARGET = Network_1 CLIENT_NETWORK_MASK = 255.255.255.0 CLIENT_NETWORK_GATEWAY = 10.1.2.1 [sgws-admin01] GRID_NETWORK_IP = 10.10.10.10 CLIENT_NETWORK_CONFIG = DISABLED NODE_TYPE = VM_Admin_Node ADMIN_ROLE = Primary [sgws-gateway01] GRID_NETWORK_IP = 10.10.10.14 CLIENT_NETWORK_CONFIG = DISABLED NODE_TYPE = VM_API_Gateway CORES = 4 MEMORY_GB = 8 [sgws-node01] GRID_NETWORK_IP = 10.10.10.11 NODE_TYPE = VM_Storage_Node [sgws-node02] GRID_NETWORK_IP = 10.10.10.12 NODE_TYPE = VM_Storage_Node [sgws-node03] GRID_NETWORK_IP = 10.10.10.13 NODE_TYPE = VM_Storage_Node [sgws-node04] GRID_NETWORK_IP = 10.10.10.14 NODE_TYPE = VM_Storage_Node [sgws-node05] GRID_NETWORK_IP = 10.10.10.15 NODE_TYPE = VM_Storage_Node
storagegrid.json:
{ "primary-admin-api-address": "10.10.10.10", "grid-details": { "name": "StorageGRID Webscale Deployment", "license": "xxxxx" }, "passwords": { "management": "xxxxx", "provision": "xxxxx", "useRandom": true }, "ntp-servers": [ "10.10.10.4" ], "dns-servers": [ "8.8.8.8" ], "grid-networks": [ "10.10.10.0/24" ], "sites": [ { "name": "Data Center 1" } ], "nodes": { "10.10.10.10": { "nodeData": { "name": "sgws-admin01", "ntpRole": "primary" }, "siteName": "Data Center 1" }, "10.10.10.19": { "nodeData": { "name": "sgws-gateway01" }, "siteName": "Data Center 1" }, "10.10.10.11": { "nodeData": { "name": "sgws-node01" }, "siteName": "Data Center 1" }, "10.10.10.12": { "nodeData": { "name": "sgws-node02" }, "siteName": "Data Center 1" }, "10.10.10.13": { "nodeData": { "name": "sgws-node03" }, "siteName": "Data Center 1" }, "10.10.10.14": { "nodeData": { "name": "sgws-node04" }, "siteName": "Data Center 1" }, "10.10.10.15": { "nodeData": { "name": "sgws-node05" }, "siteName": "Data Center 1" }, } }
Now you can start your virtual appliance deployment:
mgt:/root/StorageGRID-Webscale-11.0.1/vsphere # ./deploy-vsphere-ovftool.sh deploy.ini
A working deployment should result in running VMs and a summary like this:
After all virtual appliances are up and running, you can start configuration:
mgt:/root/StorageGRID-Webscale-11.0.1/vsphere # ./configure-storagegrid.py storagegrid.json
After configuration has been successfully, you can access your newly deployed StorageGRID Webscale cluster:
With additional 2-3 minutes we are going to have tenants and working S3 storage 🙂