From c997c72667fcad47a45d00491cee9a09469b750e Mon Sep 17 00:00:00 2001 From: Medya Gh Date: Mon, 6 May 2019 14:44:59 -0700 Subject: [PATCH] Update gitignore --- .gitignore | 3 - deploy/addons/addon-manager.yaml | 50 +++++++ deploy/addons/ingress/ingress-dp.yaml | 138 ++++++++++++++++++ .../storage-provisioner.yaml | 64 ++++++++ 4 files changed, 252 insertions(+), 3 deletions(-) create mode 100644 deploy/addons/addon-manager.yaml create mode 100644 deploy/addons/ingress/ingress-dp.yaml create mode 100644 deploy/addons/storage-provisioner/storage-provisioner.yaml diff --git a/.gitignore b/.gitignore index 16c1d2245c..7b38f9d2b1 100644 --- a/.gitignore +++ b/.gitignore @@ -30,13 +30,10 @@ _testmain.go #.yaml files specific to deploy's .template extensions -deploy/addons/addon-manager.yaml deploy/addons/dashboard/dashboard-dp.yaml deploy/addons/heapster/heapster-rc.yaml deploy/addons/heapster/influx-grafana-rc.yaml -deploy/addons/ingress/ingress-dp.yaml deploy/addons/metrics-server/metrics-server-deployment.yaml -deploy/addons/storage-provisioner/storage-provisioner.yaml #iso version file deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/VERSION diff --git a/deploy/addons/addon-manager.yaml b/deploy/addons/addon-manager.yaml new file mode 100644 index 0000000000..3b6dfa440a --- /dev/null +++ b/deploy/addons/addon-manager.yaml @@ -0,0 +1,50 @@ +# Copyright 2016 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: v1 +kind: Pod +metadata: + name: kube-addon-manager + namespace: kube-system + labels: + component: kube-addon-manager + version: v9.0 + kubernetes.io/minikube-addons: addon-manager +spec: + hostNetwork: true + containers: + - name: kube-addon-manager + image: {{default "k8s.gcr.io" .ImageRepository}}/kube-addon-manager-{{.Arch}}:v9.0 + env: + - name: KUBECONFIG + value: /var/lib/minikube/kubeconfig + imagePullPolicy: IfNotPresent + resources: + requests: + cpu: 5m + memory: 50Mi + volumeMounts: + - mountPath: /etc/kubernetes/ + name: addons + readOnly: true + - mountPath: /var/lib/minikube/ + name: kubeconfig + readOnly: true + volumes: + - hostPath: + path: /etc/kubernetes/ + name: addons + - hostPath: + path: /var/lib/minikube/ + name: kubeconfig diff --git a/deploy/addons/ingress/ingress-dp.yaml b/deploy/addons/ingress/ingress-dp.yaml new file mode 100644 index 0000000000..d88c2ef580 --- /dev/null +++ b/deploy/addons/ingress/ingress-dp.yaml @@ -0,0 +1,138 @@ +# Copyright 2016 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: default-http-backend + namespace: kube-system + labels: + app.kubernetes.io/name: default-http-backend + app.kubernetes.io/part-of: kube-system + addonmanager.kubernetes.io/mode: Reconcile +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: default-http-backend + addonmanager.kubernetes.io/mode: Reconcile + template: + metadata: + labels: + app.kubernetes.io/name: default-http-backend + addonmanager.kubernetes.io/mode: Reconcile + spec: + terminationGracePeriodSeconds: 60 + containers: + - name: default-http-backend + # Any image is permissible as long as: + # 1. It serves a 404 page at / + # 2. It serves 200 on a /healthz endpoint + image: {{default "gcr.io/google_containers" .ImageRepository}}/defaultbackend-{{.Arch}}:1.4 + imagePullPolicy: IfNotPresent + livenessProbe: + httpGet: + path: /healthz + port: 8080 + scheme: HTTP + initialDelaySeconds: 30 + timeoutSeconds: 5 + ports: + - containerPort: 8080 + resources: + limits: + cpu: 20m + memory: 30Mi + requests: + cpu: 20m + memory: 30Mi +--- +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: nginx-ingress-controller + namespace: kube-system + labels: + app.kubernetes.io/name: nginx-ingress-controller + app.kubernetes.io/part-of: kube-system + addonmanager.kubernetes.io/mode: Reconcile +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: nginx-ingress-controller + app.kubernetes.io/part-of: kube-system + addonmanager.kubernetes.io/mode: Reconcile + template: + metadata: + labels: + app.kubernetes.io/name: nginx-ingress-controller + app.kubernetes.io/part-of: kube-system + addonmanager.kubernetes.io/mode: Reconcile + annotations: + prometheus.io/port: '10254' + prometheus.io/scrape: 'true' + spec: + serviceAccountName: nginx-ingress + terminationGracePeriodSeconds: 60 + containers: + - image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller-{{.Arch}}:0.23.0 + name: nginx-ingress-controller + imagePullPolicy: IfNotPresent + readinessProbe: + httpGet: + path: /healthz + port: 10254 + scheme: HTTP + livenessProbe: + httpGet: + path: /healthz + port: 10254 + scheme: HTTP + initialDelaySeconds: 10 + timeoutSeconds: 1 + env: + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + ports: + - containerPort: 80 + hostPort: 80 + - containerPort: 443 + hostPort: 443 + # (Optional) we expose 18080 to access nginx stats in url /nginx-status + - containerPort: 18080 + hostPort: 18080 + args: + - /nginx-ingress-controller + - --default-backend-service=$(POD_NAMESPACE)/default-http-backend + - --configmap=$(POD_NAMESPACE)/nginx-load-balancer-conf + - --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services + - --udp-services-configmap=$(POD_NAMESPACE)/udp-services + - --annotations-prefix=nginx.ingress.kubernetes.io + # use minikube IP address in ingress status field + - --report-node-internal-ip-address + securityContext: + capabilities: + drop: + - ALL + add: + - NET_BIND_SERVICE + # www-data -> 33 + runAsUser: 33 diff --git a/deploy/addons/storage-provisioner/storage-provisioner.yaml b/deploy/addons/storage-provisioner/storage-provisioner.yaml new file mode 100644 index 0000000000..3ccdbc4ba7 --- /dev/null +++ b/deploy/addons/storage-provisioner/storage-provisioner.yaml @@ -0,0 +1,64 @@ +# Copyright 2016 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: storage-provisioner + namespace: kube-system + labels: + addonmanager.kubernetes.io/mode: Reconcile + +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: storage-provisioner + labels: + addonmanager.kubernetes.io/mode: EnsureExists +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:persistent-volume-provisioner +subjects: + - kind: ServiceAccount + name: storage-provisioner + namespace: kube-system + +--- +apiVersion: v1 +kind: Pod +metadata: + name: storage-provisioner + namespace: kube-system + labels: + integration-test: storage-provisioner + addonmanager.kubernetes.io/mode: Reconcile +spec: + serviceAccountName: storage-provisioner + hostNetwork: true + containers: + - name: storage-provisioner + image: {{default "gcr.io/k8s-minikube" .ImageRepository}}/storage-provisioner-{{.Arch}}:v1.8.1 + command: ["/storage-provisioner"] + imagePullPolicy: IfNotPresent + volumeMounts: + - mountPath: /tmp + name: tmp + volumes: + - name: tmp + hostPath: + path: /tmp + type: Directory