Skip to main content
Version: 3.1

Generating Portworx Kubernetes spec using curl

Generating the Portworx spec using curl

Below is an example of using curl to generate the Portworx spec file. Review the query parameters table below and add parameters as needed.


Openshift Users:
Make sure you use osft=true when generating the spec.

First, let's pick the Portworx release you want.

REL=""          # DEFAULT portworx release
#REL="/2.0" # 2.0 portworx release
#REL="/1.7" # 1.7 portworx release
#REL="/1.6" # 1.6 portworx release
#REL="/1.5" # 1.5 portworx release

Now generate the spec:

curl -fsL  "$REL/?c=mycluster&k=etcd://<ETCD_ADDRESS>:<ETCD_PORT>&kbver=$(kubectl version --short | awk -Fv '/Server Version: /{print $3}')"

Below are all parameters that can be given in the query string.

cSpecifies the unique name for the Portworx cluster.c=test_cluster
kYour key value database, such as an etcd cluster or a consul cluster.k=etcd:
sSpecify comma-separated list of drives.s=/dev/sdb,/dev/sdc
dSpecify data network interface. This is useful if your instances have non-standard network interfaces.d=eth1
mSpecify management network interface. This is useful if your instances have non-standard network interfaces.m=eth1
kbverSpecify Kubernetes version (current default is 1.7)kbver=1.8.4
storkSpecify if you want to install Storkstork=true
coreosREQUIRED if target nodes are running coreos.coreos=true
osftREQUIRED if installing on Openshift. osft =true
masSpecify if Portworx should run on the Kubernetes control plane node. For Kubernetes 1.6.4 and prior, this needs to be true (default is false)mas=true
zInstructs Portworx to run in zero storage mode on Kubernetes control plane.z=true
fInstructs Portworx to use any available, unused and unmounted drives or partitions. Portworx will never use a drive or partition that is mounted.f=true
stSelect the secrets type (aws, kvdb or vault)st=vault
j(Portworx 1.3 and higher) Specify a separate block device as a journaling device for Portworx metadata.j=/dev/sde
pwdUsername and password for ETCD authentication in the form user:passwordpwd=username:password
caLocation of CA file for ETCD
certLocation of certificate for ETCD authentication.cert=/path/to/server.crt
keyLocation of certificate key for ETCD authentication.key=/path/to/server.key
eComma-separated list of environment variables that will be exported to Portworx. To view a list of all Portworx environment variables, go to passing environment variables.e=MYENV1=myvalue1,MYENV2=myvalue2

If using secure etcd provide "https" in the URL and make sure all the certificates are in the /etc/pwx/ directory on each host which is bind mounted inside Portworx container.

Was this page helpful?