Generate Portworx Kubernetes spec using curl in OKE
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.
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 "https://install.portworx.com/$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.
Value | Description | Example |
---|---|---|
c | Specifies the unique name for the Portworx cluster. | c=test_cluster |
k | Your key value database, such as an etcd cluster or a consul cluster. | k=etcd:http://etcd.fake.net:2379 |
s | Specify comma-separated list of drives. | s=/dev/sdb,/dev/sdc |
d | Specify data network interface. This is useful if your instances have non-standard network interfaces. | d=eth1 |
m | Specify management network interface. This is useful if your instances have non-standard network interfaces. | m=eth1 |
kbver | Specify Kubernetes version (current default is 1.7) | kbver=1.8.4 |
stork | Specify if you want to install Stork | stork=true |
coreos | REQUIRED if target nodes are running coreos. | coreos=true |
osft | REQUIRED if installing on Openshift. | osft =true |
mas | Specify 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 |
z | Instructs Portworx to run in zero storage mode on Kubernetes control plane. | z=true |
f | Instructs Portworx to use any available, unused and unmounted drives or partitions. Portworx will never use a drive or partition that is mounted. | f=true |
st | Select 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 |
pwd | Username and password for ETCD authentication in the form user:password | pwd=username:password |
ca | Location of CA file for ETCD authentication. | ca=/path/to/server.ca |
cert | Location of certificate for ETCD authentication. | cert=/path/to/server.crt |
key | Location of certificate key for ETCD authentication. | key=/path/to/server.key |
e | Comma-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 |
note
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.