Commit 3e79314a by trierra

add Portworx chart v1.0.2

Signed-off-by: 's avatartrierra <oksana@portworx.com>
parent 5a31b5e1
name: portworx
appVersion: 1.0.1
version: 1.0.1
appVersion: 1.0.2
version: 1.0.2
description: A Helm chart for installing Portworx on Kubernetes.
keywords:
- Storage
......
# Portworx
## Pre-requisites
## **Pre-requisites**
This helm chart deploys [Portworx](https://portworx.com/) and [Stork](https://docs.portworx.com/scheduler/kubernetes/stork.html) on your Kubernetes cluster. The minimum requirements for deploying the helm chart are as follows:
Use this Helm chart to deploy [Portworx](https://portworx.com/) and [Stork](https://docs.portworx.com/scheduler/kubernetes/stork.html) to your Kubernetes cluster.
- All [Pre-requisites](https://docs.portworx.com/scheduler/kubernetes/install.html#prerequisites) for Portworx must be fulfilled.
Prerequisites
## Limitations
* The portworx helm chart can only be deployed in the kube-system namespace. Hence use "kube-system" in the "Target namespace" during configuration.
* You can only deploy one portworx helm chart per Kubernetes cluster.
## Uninstalling the Chart
To uninstall/delete the `my-release` deployment:
Refer to the [Install Portworx on Kubernetes via Helm](https://docs.portworx.com/portworx-install-with-kubernetes/install-px-helm/#pre-requisites) page for the list of prerequisites.
> **Tip** > The Portworx configuration files under `/etc/pwx/` directory are preserved, and will not be deleted.
## **Limitations**
* The portworx helm chart can only be deployed in the kube-system namespace. Hence use "kube-system" in the "Target namespace" during configuration.
```
helm delete my-release
```
The command removes all the Kubernetes components associated with the chart and deletes the release.
## **Uninstalling the Chart**
#### You can uninstall Portworx using one of the following methods:
## Documentation
* [Portworx docs site](https://docs.portworx.com/scheduler/kubernetes/)
* [Portworx interactive tutorials](https://docs.portworx.com/scheduler/kubernetes/px-k8s-interactive.html)
#### **1. Delete all the Kubernetes components associated with the chart and the release.**
## Installing the Chart using the CLI
> **Note** > The Portworx configuration files under `/etc/pwx/` directory are preserved, and will not be deleted.
To install the chart with the release name `my-release` run the following commands substituting relevant values for your setup:
To perform this operation simply delete the application from the Apps page
##### NOTE:
`kvdb` is a required field. The chart installation would not proceed unless this option is provided.
If the etcdcluster being used is a secured ETCD (SSL/TLS) then please follow instructions to create a kubernetes secret with the certs. https://docs.portworx.com/scheduler/kubernetes/etcd-certs-using-secrets.html#create-kubernetes-secret
#### **2. Wipe your Portworx installation**
> **Note** > The commands in this section are disruptive and will lead to data loss. Please use caution..
See more details [here](https://2.1.docs.portworx.com/portworx-install-with-kubernetes/install-px-helm/#uninstall)
`clusterName` should be a unique name identifying your Portworx cluster. The default value is `mycluster`, but it is suggested to update it with your naming scheme.
## **Documentation**
* [Portworx docs site](https://docs.portworx.com/install-with-other/rancher/rancher-2.x/#step-1-install-rancher)
* [Portworx interactive tutorials](https://docs.portworx.com/scheduler/kubernetes/px-k8s-interactive.html)
Example of using the helm CLI to install the chart:
```
helm install --debug --name my-release --set kvdb=etcd:http://192.168.70.90:2379,clusterName=$(uuid) ./helm/charts/portworx/
```
## **Installing the Chart using the CLI**
## Basic troubleshooting
See the installation details [here](https://2.1.docs.portworx.com/portworx-install-with-kubernetes/install-px-helm/)
#### Helm install errors with "no available release name found"
## **Installing Portworx on AWS**
```
helm install --dry-run --debug --set kvdb=etcd:http://192.168.70.90:2379,clusterName=$(uuid) ./helm/charts/px/
[debug] Created tunnel using local port: '37304'
[debug] SERVER: "127.0.0.1:37304"
[debug] Original chart version: ""
[debug] CHART PATH: /root/helm/charts/px
See the installation details [here](https://2.1.docs.portworx.com/cloud-references/auto-disk-provisioning/aws)
Error: no available release name found
```
This most likely indicates that Tiller doesn't have the right RBAC permissions.
You can verify the tiller logs
```
[storage/driver] 2018/02/07 06:00:13 get: failed to get "singing-bison.v1": configmaps "singing-bison.v1" is forbidden: User "system:serviceaccount:kube-system:default" cannot get configmaps in the namespace "kube-system"
[tiller] 2018/02/07 06:00:13 info: generated name singing-bison is taken. Searching again.
[tiller] 2018/02/07 06:00:13 warning: No available release names found after 5 tries
[tiller] 2018/02/07 06:00:13 failed install prepare step: no available release name found
```
## ** Giving your etcd certificates to Portworx using Kubernetes Secrets.**
This is the recommended way of providing etcd certificates, as the certificates will be automatically available to the new nodes joining the cluster
#### Helm install errors with "Job failed: BackoffLimitExceeded"
* Create Kubernetes secret
* Copy all your etcd certificates and key in a directory etcd-secrets/ to create a Kubernetes secret from it. Make sure the file names are the same as you gave above.
```
helm install --debug --set dataInterface=eth1,managementInterface=eth1,kvdb=etcd:http://192.168.70.179:2379,clusterName=$(uuid) ./helm/charts/px/
[debug] Created tunnel using local port: '36389'
[debug] SERVER: "127.0.0.1:36389"
[debug] Original chart version: ""
[debug] CHART PATH: /root/helm/charts/px
Error: Job failed: BackoffLimitExceeded
# ls -1 etcd-secrets/
etcd-ca.crt
etcd.crt
etcd.key
```
This most likely indicates that the pre-install hook for the helm chart has failed due to a misconfigured or inaccessible ETCD url.
Follow the below steps to check the reason for failure.
* Use kubectl to create the secret named px-etcd-certs from the above files:
```
kubectl get pods -nkube-system -a | grep preinstall
px-etcd-preinstall-hook-hxvmb 0/1 Error 0 57s
kubectl logs po/px-etcd-preinstall-hook-hxvmb -nkube-system
Initializing...
Verifying if the provided etcd url is accessible: http://192.168.70.179:2379
Response Code: 000
Incorrect ETCD URL provided. It is either not reachable or is incorrect...
# kubectl -n kube-system create secret generic px-etcd-certs --from-file=etcd-secrets/
```
Ensure the correct etcd URL is set as a parameter to the `helm install` command.
#### Helm install errors with "Job failed: Deadline exceeded"
* Notice that the secret has 3 keys etcd-ca.crt, etcd.crt and etcd.key, corresponding to file names in the etcd-secrets folder. We will use these keys in the Portworx spec file to reference the certificates.
```
helm install --debug --set dataInterface=eth1,managementInterface=eth1,kvdb=etcd:http://192.168.20.290:2379,clusterName=$(uuid) ./charts/px/
[debug] Created tunnel using local port: '39771'
[debug] SERVER: "127.0.0.1:39771"
# kubectl -n kube-system describe secret px-etcd-certs
Name: px-etcd-certs
Namespace: kube-system
Labels: <none>
Annotations: <none>
[debug] Original chart version: ""
[debug] CHART PATH: /root/helm/charts/px
Type: Opaque
Error: Job failed: DeadlineExceeded
```
This error indicates that the pre-install hook for the helm chart has failed to run to completion correctly. Verify that the etcd URL is accessible. This error occurs on kubernetes cluster(s) with version below 1.8
Follow the below steps to check the reason for failure.
```
kubectl get pods -nkube-system -a | grep preinstall
px-hook-etcd-preinstall-dzmkl 0/1 Error 0 6m
px-hook-etcd-preinstall-nlqwl 0/1 Error 0 6m
px-hook-etcd-preinstall-nsjrj 0/1 Error 0 5m
px-hook-etcd-preinstall-r9gmz 0/1 Error 0 6m
kubectl logs po/px-hook-etcd-preinstall-dzmkl -nkube-system
Initializing...
Verifying if the provided etcd url is accessible: http://192.168.20.290:2379
Response Code: 000
Incorrect ETCD URL provided. It is either not reachable or is incorrect...
Data
====
etcd-ca.crt: 1679 bytes
etcd.crt: 1680 bytes
etcd.key: 414 bytes
```
Ensure the correct etcd URL is set as a parameter to the `helm install` command.
Once above secret is created, proceed to the next steps.
# Portworx
[Portworx](https://portworx.com/) is a software defined persistent storage solution designed and purpose built for applications deployed as containers, via container orchestrators such as Kubernetes, Marathon and Swarm. It is a clustered block storage solution and provides a Cloud-Native layer from which containerized stateful applications programmatically consume block, file and object storage services directly through the scheduler.
[Portworx](https://portworx.com/) is a software defined storage overlay that allows you to
* Run containerized stateful applications that are highly-available (HA) across multiple nodes, cloud instances, regions, data centers or even clouds
* Migrate workflows between multiple clusters running across same or hybrid clouds
* Run hyperconverged workloads where the data resides on the same host as the applications
* Have programmatic control on your storage resources
\ No newline at end of file
etcdType: Built-in
\ No newline at end of file
{{- $customRegistryURL := .Values.customRegistryURL | default "none" }}
{{- $registrySecret := .Values.registrySecret | default "none" }}
{{- $etcdCertPath := .Values.etcd.certPath | default "none" }}
{{- $etcdCA := .Values.etcd.ca | default "none" }}
{{- $etcdCert := .Values.etcd.cert | default "none" }}
{{- $etcdKey := .Values.etcd.key | default "none" }}
apiVersion: batch/v1
kind: Job
metadata:
namespace: kube-system
name: px-hook-etcd-preinstall
labels:
heritage: {{.Release.Service | quote }}
release: {{.Release.Name | quote }}
app.kubernetes.io/managed-by: {{.Release.Service | quote }}
app.kubernetes.io/instance: {{.Release.Name | quote }}
chart: "{{.Chart.Name}}-{{.Chart.Version}}"
annotations:
"helm.sh/hook": pre-install
"helm.sh/hook-weight": "-5"
"helm.sh/hook-delete-policy": before-hook-creation
spec:
{{ if semverCompare ">= 1.8-0" .Capabilities.KubeVersion.GitVersion }}
backoffLimit: 0
{{ else }}
activeDeadlineSeconds: 30
{{ end }}
template:
spec:
{{- if not (eq $registrySecret "none") }}
imagePullSecrets:
- name: {{ $registrySecret }}
{{- end }}
restartPolicy: Never
containers:
- name: pre-install-job
terminationMessagePath: '/dev/termination-log'
terminationMessagePolicy: 'FallbackToLogsOnError'
imagePullPolicy: Always
{{- if eq $customRegistryURL "none" }}
image: "portworx/px-etcd-preinstall-hook:v1.2"
{{- else}}
image: "{{ $customRegistryURL }}/portworx/px-etcd-preinstall-hook:v1.2"
{{- end }}
{{- if not (eq $etcdCertPath "none") }}
command: ['/bin/bash']
args: ['/usr/bin/etcdStatus.sh',
"{{ .Values.kvdb }}",
{{- if ne $etcdCA "none" }}
"{{$etcdCA}}",
{{- end -}}
{{- if ne $etcdCert "none" }}
"{{$etcdCert}}",
{{- end -}}
{{- if ne $etcdKey "none" }}
"{{$etcdKey}}",
{{- end -}}
]
volumeMounts:
- mountPath: /etc/pwx/etcdcerts
name: etcdcerts
volumes:
- name: etcdcerts
secret:
secretName: px-etcd-certs
items:
- key: ca.pem
path: ca.pem
{{- if ne $etcdCert "none" }}
- key: client.pem
path: client.pem
{{- end -}}
{{- if ne $etcdKey "none" }}
- key: client-key.pem
path: client-key.pem
{{- end -}}
{{- else}}
command: ['/bin/bash']
args: ['/usr/bin/etcdStatus.sh',"{{ .Values.kvdb }}"]
{{- end}}
......@@ -30,13 +30,13 @@ rules:
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["endpoints", "services"]
verbs: ["create", "delete", "get"]
verbs: ["create", "delete", "get", "update"]
- apiGroups: [""]
resources: ["secrets"]
verbs: ["get", "list"]
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["events"]
verbs: ["watch"]
......@@ -63,7 +63,7 @@ roleRef:
name: portworx-pvc-controller-role
apiGroup: rbac.authorization.k8s.io
---
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
......@@ -87,15 +87,10 @@ spec:
name: portworx-pvc-controller
tier: control-plane
spec:
{{- if (and (.Values.openshiftInstall) (eq .Values.openshiftInstall true))}}
imagePullSecrets:
- name: {{ required "A registry secret is required for openshift installation" .Values.registrySecret }}
{{- else }}
{{- if not (empty .Values.registrySecret) }}
imagePullSecrets:
- name: {{ .Values.registrySecret }}
{{- end }}
{{- end }}
containers:
- command:
- kube-controller-manager
......
......@@ -49,7 +49,7 @@ spec:
clusterIP: None
---
kind: StatefulSet
apiVersion: apps/v1beta1
apiVersion: apps/v1
metadata:
name: px-csi-ext
namespace: kube-system
......
{{/* Setting defaults if they are omitted. */}}
{{- $deployEnvironmentIKS := .Capabilities.KubeVersion.GitVersion | regexMatch "IKS" }}
{{- $usefileSystemDrive := .Values.usefileSystemDrive | default false }}
{{- $drives := .Values.drives | default "none" }}
{{- $usedrivesAndPartitions := .Values.usedrivesAndPartitions | default false }}
{{- $secretType := .Values.secretType | default "k8s" }}
{{- $journalDevice := .Values.journalDevice | default "none" }}
{{- $maxStorageNodes := .Values.maxStorageNodes | default "none" }}
{{- $customRegistryURL := .Values.customRegistryURL | default "none" }}
{{- $registrySecret := .Values.registrySecret | default "none" }}
......@@ -15,35 +15,40 @@
{{- $isCoreOS := .Values.isTargetOSCoreOS | default false }}
{{- $pksInstall := .Values.pksInstall | default false }}
{{- $internalKVDB := .Values.internalKVDB | default false }}
{{- $internalKVDB := .Values.etcdType | default "none" }}
{{- $csi := .Values.csi | default false }}
{{- $etcdCredentials := .Values.etcd.credentials | default "none:none" }}
{{- $etcdCertPath := .Values.etcd.certPath | default "none" }}
{{- $etcdCertPath := .Values.etcd.ca | default "none" }}
{{- $etcdCA := .Values.etcd.ca | default "none" }}
{{- $etcdCert := .Values.etcd.cert | default "none" }}
{{- $etcdKey := .Values.etcd.key | default "none" }}
{{- $consulToken := .Values.consul.token | default "none" }}
{{- $misc := .Values.misc | default "" | split " " }}
{{- $etcdEndPoints := .Values.kvdb -}}
{{- $etcdEndPoints := .Values.kvdb }}
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: portworx
namespace: kube-system
labels:
name: portworx
spec:
minReadySeconds: 0
updateStrategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
selector:
matchLabels:
name: portworx
app: portworx
template:
metadata:
labels:
app: portworx
name: portworx
# {{- include "px.labels" . | indent 8 }}
spec:
affinity:
nodeAffinity:
......@@ -74,25 +79,10 @@ spec:
terminationMessagePath: "/tmp/px-termination-log"
imagePullPolicy: Always
args:
{{- with .Values }}
[
{{- if eq $drives "none" }}
{{- if eq $usedrivesAndPartitions true }}
"-A",
{{- else }}
"-a",
{{- end -}}
{{- if or $usefileSystemDrive $deployEnvironmentIKS }}
"-f",
{{- end }}
{{- else }}
{{- $driveNames := $drives | split ";" }}
{{- range $index, $name := $driveNames }}
"-s", "{{ $name }}",
{{- end -}}
{{- end -}}
{{- if eq $internalKVDB true }}
{{ include "px.storage" . | indent 0 }}
{{- with .Values -}}
{{- if eq "Built-in" $internalKVDB }}
"-b",
{{- end -}}
......@@ -100,14 +90,19 @@ spec:
"-j", "{{ $journalDevice }}",
{{- end -}}
{{- if empty $etcdEndPoints }}
{{- if eq $internalKVDB false }}
{{- if $etcdEndPoints -}}
"-k", "{{ regexReplaceAllLiteral "(;)" .kvdb "," }}",
{{- else }}
{{- if ne "Built-in" $internalKVDB }}
{{- if eq "US region" .region }}
"-k", "etcd:http://px-etcd1.portworx.com:2379,etcd:http://px-etcd2.portworx.com:2379,etcd:http://px-etcd3.portworx.com:2379",
{{- else if eq "EU region" .region }}
"-k", "etcd:http://px-eu-etcd1.portworx.com:2379,etcd:http://px-eu-etcd2.portworx.com:2379,etcd:http://px-eu-etcd3.portworx.com:2379",
{{- else }}
"{{ required "A valid kvdb url is required." .kvdb }}"
{{- end -}}
{{- else }}
"-k", "{{ regexReplaceAllLiteral "(;)" .kvdb "," }}",
{{- end -}}
{{- end -}}
"-c", "{{ required "Clustername cannot be empty" .clusterName }}",
{{- if ne $secretType "none" }}
......@@ -118,11 +113,11 @@ spec:
{{- end -}}
{{- end -}}
{{- if ne $dataInterface "none" }}
{{- if and (ne $dataInterface "none") (ne $dataInterface "auto")}}
"-d", "{{ $dataInterface }}",
{{- end -}}
{{- if ne $managementInterface "none" }}
{{- if and (ne $managementInterface "none") (ne $managementInterface "auto") }}
"-m", "{{ $managementInterface }}",
{{- end -}}
......@@ -131,15 +126,15 @@ spec:
{{- end -}}
{{- if ne $etcdCA "none" }}
"-ca", "{{ $etcdCA }}",
"-ca", "/etc/pwx/etcdcerts/{{ $etcdCA }}",
{{- end -}}
{{- if ne $etcdCert "none" }}
"-cert", "{{ $etcdCert }}",
"-cert", "/etc/pwx/etcdcerts/{{ $etcdCert }}",
{{- end -}}
{{- if ne $etcdKey "none" }}
"-key", "{{ $etcdKey }}",
"-key", "/etc/pwx/etcdcerts/{{ $etcdKey }}",
{{- end -}}
{{- if ne $consulToken "none" }}
......@@ -153,8 +148,8 @@ spec:
{{ end -}}
"-x", "kubernetes"
{{- end -}}
]
{{- end }}
env:
- name: "PX_TEMPLATE_VERSION"
value: "v2"
......@@ -308,21 +303,17 @@ spec:
restartPolicy: Always
serviceAccountName: px-account
volumes:
{{- if not (eq $etcdCertPath "none") }}
{{- if ne $etcdCertPath "none" }}
- name: etcdcerts
secret:
secretName: px-etcd-certs
items:
- key: ca.pem
path: ca.pem
{{- if ne $etcdCert "none" }}
- key: client.pem
path: client.pem
{{- end -}}
{{- if ne $etcdKey "none" }}
- key: client-key.pem
path: client-key.key
{{- end -}}
- key: "{{ $etcdCA }}"
path: "{{ $etcdCA }}"
- key: "{{ $etcdCert }}"
path: "{{ $etcdCert }}"
- key: "{{ $etcdKey }}"
path: "{{ $etcdKey }}"
{{- end}}
- name: dockersock
hostPath:
......
......@@ -55,7 +55,7 @@ spec:
selector:
tier: px-web-console
---
apiVersion: apps/v1beta2
apiVersion: apps/v1
kind: Deployment
metadata:
name: px-lighthouse
......
......@@ -34,6 +34,12 @@ rules:
- apiGroups: ["portworx.io"]
resources: ["volumeplacementstrategies"]
verbs: ["get", "list"]
- apiGroups: ["stork.libopenstorage.org"]
resources: ["backuplocations"]
verbs: ["get", "list"]
- apiGroups: [""]
resources: ["events"]
verbs: ["create"]
---
kind: ClusterRoleBinding
......
......@@ -8,7 +8,7 @@ metadata:
spec:
selector:
name: portworx
type: NodePort
type: ClusterIP
ports:
- name: px-api
protocol: TCP
......@@ -33,7 +33,7 @@ metadata:
spec:
selector:
name: portworx-api
type: NodePort
type: ClusterIP
ports:
- name: px-api
protocol: TCP
......
{{- if (.Values.stork) and (eq .Values.stork true)}}
{{- $isCoreOS := .Values.isTargetOSCoreOS | default false }}
{{- $customRegistryURL := .Values.customRegistryURL | default "none" }}
{{- $registrySecret := .Values.registrySecret | default "none" }}
{{- $isCoreOS := .Values.isTargetOSCoreOS | default false }}
{{- $customRegistryURL := .Values.customRegistryURL | default "none" }}
{{- $registrySecret := .Values.registrySecret | default "none" }}
apiVersion: v1
kind: ConfigMap
......@@ -63,61 +63,16 @@ apiVersion: {{ template "rbac.apiVersion" . }}
metadata:
name: stork-role
rules:
- apiGroups: [""]
resources: ["pods", "pods/exec"]
verbs: ["get", "list", "delete", "create"]
- apiGroups: [""]
resources: ["persistentvolumes"]
verbs: ["get", "list", "watch", "create", "delete"]
- apiGroups: [""]
resources: ["persistentvolumeclaims"]
verbs: ["get", "list", "watch", "update"]
- apiGroups: ["storage.k8s.io"]
resources: ["storageclasses"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["events"]
verbs: ["list", "watch", "create", "update", "patch"]
- apiGroups: ["stork.libopenstorage.org"]
resources: ["rules"]
verbs: ["get", "list"]
- apiGroups: ["stork.libopenstorage.org"]
resources: ["migrations", "clusterpairs", "groupvolumesnapshots"]
verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
verbs: ["create", "list", "watch", "delete", "get"]
- apiGroups: ["volumesnapshot.external-storage.k8s.io"]
resources: ["volumesnapshots"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- apiGroups: ["volumesnapshot.external-storage.k8s.io"]
resources: ["volumesnapshotdatas"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- apiGroups: [""]
resources: ["configmaps"]
verbs: ["get", "create", "update"]
- apiGroups: [""]
resources: ["services"]
verbs: ["get"]
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get", "list", "watch"]
- apiGroups: ["*"]
resources: ["deployments", "deployments/extensions"]
verbs: ["list", "get", "watch", "patch", "update", "initialize"]
- apiGroups: ["*"]
resources: ["statefulsets", "statefulsets/extensions"]
verbs: ["list", "get", "watch", "patch", "update", "initialize"]
- apiGroups: ["*"]
resources: ["*"]
verbs: ["list", "get"]
verbs: ["*"]
---
kind: ClusterRoleBinding
apiVersion: {{ template "rbac.apiVersion" . }}
metadata:
name: stork-role-binding
subjects:
- kind: ServiceAccount
- kind: ServiceAccount
name: stork-account
namespace: kube-system
roleRef:
......@@ -138,7 +93,29 @@ spec:
port: 8099
targetPort: 8099
---
apiVersion: extensions/v1beta1
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: volumeplacementstrategies.portworx.io
spec:
group: portworx.io
versions:
- name: v1beta2
served: true
storage: true
- name: v1beta1
served: false
storage: false
scope: Cluster
names:
plural: volumeplacementstrategies
singular: volumeplacementstrategy
kind: VolumePlacementStrategy
shortNames:
- vps
- vp
---
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
......@@ -154,6 +131,10 @@ spec:
maxUnavailable: 1
type: RollingUpdate
replicas: 3
selector:
matchLabels:
name: stork
tier: control-plane
template:
metadata:
annotations:
......@@ -260,7 +241,7 @@ apiVersion: {{ template "rbac.apiVersion" . }}
metadata:
name: stork-scheduler-role-binding
subjects:
- kind: ServiceAccount
- kind: ServiceAccount
name: stork-scheduler-account
namespace: kube-system
roleRef:
......@@ -268,7 +249,7 @@ roleRef:
name: stork-scheduler-role
apiGroup: rbac.authorization.k8s.io
---
apiVersion: apps/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
......@@ -278,6 +259,10 @@ metadata:
namespace: kube-system
spec:
replicas: 3
selector:
matchLabels:
component: scheduler
tier: control-plane
template:
metadata:
labels:
......@@ -320,4 +305,4 @@ spec:
topologyKey: "kubernetes.io/hostname"
hostPID: false
serviceAccountName: stork-scheduler-account
{{- end }}
{{- end }}
# Please uncomment and specify values for these options as per your requirements.
drives: none # NOTE: This is a ";" seperated list of drives. For eg: "/dev/sda;/dev/sdb;/dev/sdc" Defaults to use -A switch.
usefileSystemDrive: false # true/false Instructs PX to use an unmounted Drive even if it has a filesystem.
usedrivesAndPartitions: false # Defaults to false. Change to true and PX will use unmounted drives and partitions.
journalDevice:
kvdb:
ownEtcdOption: none
etcdAuth: none
etcdType: none # KVDB type
kvdb: "etcd:http://192.168.70.90:2379"
internalKVDB: false # internal KVDB
etcd:
credentials: none:none # Username and password for ETCD authentication in the form user:password
ca: none # Name of CA file for ETCD authentication. server.ca
......@@ -13,13 +11,11 @@ etcd:
key: none # Name of certificate key for ETCD authentication Should be server.key
consul:
token: none # ACL token value used for Consul authentication. (example: 398073a8-5091-4d9c-871a-bbbeb030d1f6)
region: none # US or EU regions for Portworx hosted etcds
dataInterface: none # Name of the interface <ethX>
managementInterface: none # Name of the interface <ethX>
isTargetOSCoreOS: false # Is your target OS CoreOS? Defaults to false.
pksInstall: false # installation on PKS (Pivotal Container Service)
AKSorEKSInstall: false # installation on AKS or EKS.
platformOptions: none # AKS, EKS or GKE platforms
customRegistryURL:
registrySecret:
......@@ -28,12 +24,12 @@ clusterName: mycluster # This is the default. please change it to
secretType: k8s # Defaults to None, but can be AWS / KVDB / Vault.
envVars: none # NOTE: This is a ";" seperated list of environment variables. For eg: MYENV1=myvalue1;MYENV2=myvalue2
stork: true # Use Stork https://docs.portworx.com/scheduler/kubernetes/stork.html for hyperconvergence.
storkVersion: 2.1.0
storkVersion: 2.2.5
lighthouse: true
lighthouseVersion: 2.0.3
lighthouseSyncVersion: 0.3
lighthouseStorkConnectorVersion: 0.1
lighthouseVersion: 2.0.5
lighthouseSyncVersion: 2.0.5
lighthouseStorkConnectorVersion: 2.0.5
deployOnMaster: false # For POC only
csi: false # Enable CSI
......@@ -45,4 +41,113 @@ serviceAccount:
deploymentType: oci # accepts "oci" or "docker"
imageType: none #
imageVersion: 2.0.3.3 # Version of the PX Image.
imageVersion: 2.1.5 # Version of the PX Image.
result: none
environment: none
onpremStorage: none
maxStorageNodes: none
journalDevice: none
usefileSystemDrive: false # true/false Instructs PX to use an unmounted Drive even if it has a filesystem.
usedrivesAndPartitions: false # Use unmounted disks even if they have a partition or filesystem on it. PX will never use a drive or partition that is mounted. (useDrivesAndPartitions)
provider: none
deviceConfig: none
drive_1:
aws:
type: none
size: none
iops: none
gc:
type: standard
size: 1000
drive_2:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_3:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_4:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_5:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_6:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_7:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_8:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_9:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
drive_10:
aws:
type: none
size: none
iops: none
gc:
type: none
size: none
existingDisk1: none
existingDisk2: none
existingDisk3: none
existingDisk4: none
existingDisk5: none
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment