diff options
Diffstat (limited to 'moonv4/kubernetes')
-rw-r--r-- | moonv4/kubernetes/README.md | 50 | ||||
-rw-r--r-- | moonv4/kubernetes/conf/password_moon.txt | 1 | ||||
-rw-r--r-- | moonv4/kubernetes/conf/password_root.txt | 1 | ||||
-rw-r--r-- | moonv4/kubernetes/conf/ports.conf | 24 | ||||
-rw-r--r-- | moonv4/kubernetes/init_k8s.sh | 33 | ||||
-rw-r--r-- | moonv4/kubernetes/start_moon.sh | 37 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/consul.yaml | 33 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/db.yaml | 84 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/keystone.yaml | 39 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/kube-dns.yaml | 183 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/moon_configuration.yaml | 25 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/moon_gui.yaml | 42 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/moon_manager.yaml | 33 | ||||
-rw-r--r-- | moonv4/kubernetes/templates/moon_orchestrator.yaml | 40 |
14 files changed, 0 insertions, 625 deletions
diff --git a/moonv4/kubernetes/README.md b/moonv4/kubernetes/README.md deleted file mode 100644 index 04d54924..00000000 --- a/moonv4/kubernetes/README.md +++ /dev/null @@ -1,50 +0,0 @@ - -# Installation - -Choose the right deployment: - -## Minikube installation - -```bash -curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl -chmod +x ./kubectl -sudo mv ./kubectl /usr/local/bin/kubectl -curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.21.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/ -``` - -## Kubeadm installation - -see: https://kubernetes.io/docs/setup/independent/install-kubeadm/ - -```bash -apt-get update && apt-get install -y apt-transport-https -curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - -cat <<EOF >/etc/apt/sources.list.d/kubernetes.list -deb http://apt.kubernetes.io/ kubernetes-xenial main -EOF -apt-get update -apt-get install -y kubelet kubeadm kubectl -``` - -# Platform - -## Creation - -Execute the script : init_k8s.sh - -```bash -sudo bash init_k8s.sh -watch kubectl get po --namespace=kube-system -``` - -Wait until all pods are in "Running" state (crtl-c to stop the watch command) - -## Execution - -Execute the script : start_moon.sh - -```bash -sudo bash start_moon.sh -watch kubectl get po --namespace=moon -``` - diff --git a/moonv4/kubernetes/conf/password_moon.txt b/moonv4/kubernetes/conf/password_moon.txt deleted file mode 100644 index bb9bcf7d..00000000 --- a/moonv4/kubernetes/conf/password_moon.txt +++ /dev/null @@ -1 +0,0 @@ -p4sswOrd1
\ No newline at end of file diff --git a/moonv4/kubernetes/conf/password_root.txt b/moonv4/kubernetes/conf/password_root.txt deleted file mode 100644 index bb9bcf7d..00000000 --- a/moonv4/kubernetes/conf/password_root.txt +++ /dev/null @@ -1 +0,0 @@ -p4sswOrd1
\ No newline at end of file diff --git a/moonv4/kubernetes/conf/ports.conf b/moonv4/kubernetes/conf/ports.conf deleted file mode 100644 index 487945c0..00000000 --- a/moonv4/kubernetes/conf/ports.conf +++ /dev/null @@ -1,24 +0,0 @@ -manager: - port: 8082 - kport: 30001 -gui: - port: 3000 - kport: 30002 -orchestrator: - port: 8083 - kport: 30003 - -consul: - port: 8500 - kport: 30005 -keystone: - port: 5000 - kport: 30006 - -wrapper: - port: 8080 - kport: 30010 -interface: - port: 8080 -authz: - port: 8081 diff --git a/moonv4/kubernetes/init_k8s.sh b/moonv4/kubernetes/init_k8s.sh deleted file mode 100644 index 6eb94e78..00000000 --- a/moonv4/kubernetes/init_k8s.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash - -set -x - -sudo kubeadm reset - -sudo swapoff -a - -sudo kubeadm init --pod-network-cidr=192.168.0.0/16 -#sudo kubeadm init --pod-network-cidr=10.244.0.0/16 - -mkdir -p $HOME/.kube -sudo cp -f /etc/kubernetes/admin.conf $HOME/.kube/config -sudo chown $(id -u):$(id -g) $HOME/.kube/config - -kubectl apply -f http://docs.projectcalico.org/v2.4/getting-started/kubernetes/installation/hosted/kubeadm/1.6/calico.yaml -#kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.6/rbac.yaml -#kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.6/canal.yaml - -#kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml - -kubectl delete deployment kube-dns --namespace=kube-system -kubectl apply -f kubernetes/templates/kube-dns.yaml - -kubectl taint nodes --all node-role.kubernetes.io/master- - -kubectl proxy& -sleep 5 -echo ========================================= -kubectl get po --namespace=kube-system -echo ========================================= - - diff --git a/moonv4/kubernetes/start_moon.sh b/moonv4/kubernetes/start_moon.sh deleted file mode 100644 index 8121e319..00000000 --- a/moonv4/kubernetes/start_moon.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env bash - -set -x - -kubectl create namespace moon -kubectl create configmap moon-config --from-file conf/moon.conf -n moon -kubectl create configmap config --from-file ~/.kube/config -n moon -kubectl create secret generic mysql-root-pass --from-file=kubernetes/conf/password_root.txt -n moon -kubectl create secret generic mysql-pass --from-file=kubernetes/conf/password_moon.txt -n moon - -kubectl create -n moon -f kubernetes/templates/consul.yaml -kubectl create -n moon -f kubernetes/templates/db.yaml -kubectl create -n moon -f kubernetes/templates/keystone.yaml - -echo ========================================= -kubectl get pods -n moon -echo ========================================= - -sleep 10 -kubectl create -n moon -f kubernetes/templates/moon_configuration.yaml - -echo Waiting for jobs moonforming -sleep 5 -kubectl get jobs -n moon -kubectl logs -n moon jobs/moonforming - -sleep 5 - -kubectl create -n moon -f kubernetes/templates/moon_manager.yaml - -sleep 2 - -kubectl create -n moon -f kubernetes/templates/moon_orchestrator.yaml - -kubectl create -n moon -f kubernetes/templates/moon_gui.yaml - - diff --git a/moonv4/kubernetes/templates/consul.yaml b/moonv4/kubernetes/templates/consul.yaml deleted file mode 100644 index f0fb764e..00000000 --- a/moonv4/kubernetes/templates/consul.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - namespace: moon - name: consul -spec: - replicas: 1 - template: - metadata: - labels: - app: consul - spec: - hostname: consul - containers: - - name: consul - image: consul:latest - ports: - - containerPort: 8500 ---- - -apiVersion: v1 -kind: Service -metadata: - name: consul - namespace: moon -spec: - ports: - - port: 8500 - targetPort: 8500 - nodePort: 30005 - selector: - app: consul - type: NodePort diff --git a/moonv4/kubernetes/templates/db.yaml b/moonv4/kubernetes/templates/db.yaml deleted file mode 100644 index 38418643..00000000 --- a/moonv4/kubernetes/templates/db.yaml +++ /dev/null @@ -1,84 +0,0 @@ -#apiVersion: v1 -#kind: PersistentVolume -#metadata: -# name: local-pv-1 -# labels: -# type: local -#spec: -# capacity: -# storage: 5Gi -# accessModes: -# - ReadWriteOnce -# hostPath: -# path: /tmp/data/pv-1 -#--- -# -#apiVersion: v1 -#kind: PersistentVolumeClaim -#metadata: -# name: mysql-pv-claim -# labels: -# platform: moon -# app: db -#spec: -# accessModes: -# - ReadWriteOnce -# resources: -# requests: -# storage: 5Gi -#--- - -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - namespace: moon - name: db -spec: - replicas: 1 - strategy: - type: Recreate - template: - metadata: - labels: - app: db - spec: - containers: - - name: db - image: mysql:latest - env: - - name: MYSQL_DATABASE - value: "moon" - - name: MYSQL_USER - value: "moon" - - name: MYSQL_PASSWORD - valueFrom: - secretKeyRef: - name: mysql-pass - key: password_moon.txt - - name: MYSQL_ROOT_PASSWORD - valueFrom: - secretKeyRef: - name: mysql-root-pass - key: password_root.txt - ports: - - containerPort: 3306 - name: mysql -# volumeMounts: -# - name: mysql-persistent-storage -# mountPath: /var/lib/mysql -# volumes: -# - name: mysql-persistent-storage -# persistentVolumeClaim: -# claimName: mysql-pv-claim ---- -apiVersion: v1 -kind: Service -metadata: - namespace: moon - name: db -spec: - ports: - - port: 3306 - selector: - app: db ----
\ No newline at end of file diff --git a/moonv4/kubernetes/templates/keystone.yaml b/moonv4/kubernetes/templates/keystone.yaml deleted file mode 100644 index e4218e4c..00000000 --- a/moonv4/kubernetes/templates/keystone.yaml +++ /dev/null @@ -1,39 +0,0 @@ -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - namespace: moon - name: keystone -spec: - replicas: 1 - template: - metadata: - labels: - app: keystone - spec: - hostname: keystone - containers: - - name: keystone - image: asteroide/keystone:pike-cors - env: - - name: KEYSTONE_HOSTNAME - value: "127.0.0.1" - - name: KEYSTONE_PORT - value: "30006" - ports: - - containerPort: 35357 - containerPort: 5000 ---- - -apiVersion: v1 -kind: Service -metadata: - name: keystone - namespace: moon -spec: - ports: - - port: 5000 - targetPort: 5000 - nodePort: 30006 - selector: - app: keystone - type: NodePort diff --git a/moonv4/kubernetes/templates/kube-dns.yaml b/moonv4/kubernetes/templates/kube-dns.yaml deleted file mode 100644 index c8f18fd8..00000000 --- a/moonv4/kubernetes/templates/kube-dns.yaml +++ /dev/null @@ -1,183 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - annotations: - deployment.kubernetes.io/revision: "2" - kubectl.kubernetes.io/last-applied-configuration: | - {"apiVersion":"extensions/v1beta1","kind":"Deployment","metadata":{"annotations":{"deployment.kubernetes.io/revision":"1"},"creationTimestamp":"2017-10-30T09:03:59Z","generation":1,"labels":{"k8s-app":"kube-dns"},"name":"kube-dns","namespace":"kube-system","resourceVersion":"556","selfLink":"/apis/extensions/v1beta1/namespaces/kube-system/deployments/kube-dns","uid":"4433b709-bd51-11e7-a055-80fa5b15034a"},"spec":{"replicas":1,"selector":{"matchLabels":{"k8s-app":"kube-dns"}},"strategy":{"rollingUpdate":{"maxSurge":"10%","maxUnavailable":0},"type":"RollingUpdate"},"template":{"metadata":{"creationTimestamp":null,"labels":{"k8s-app":"kube-dns"}},"spec":{"affinity":{"nodeAffinity":{"requiredDuringSchedulingIgnoredDuringExecution":{"nodeSelectorTerms":[{"matchExpressions":[{"key":"beta.kubernetes.io/arch","operator":"In","values":["amd64"]}]}]}}},"containers":[{"args":["--domain=cluster.local.","--dns-port=10053","--config-dir=/kube-dns-config","--v=2"],"env":[{"name":"PROMETHEUS_PORT","value":"10055"}],"image":"gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.5","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":5,"httpGet":{"path":"/healthcheck/kubedns","port":10054,"scheme":"HTTP"},"initialDelaySeconds":60,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5},"name":"kubedns","ports":[{"containerPort":10053,"name":"dns-local","protocol":"UDP"},{"containerPort":10053,"name":"dns-tcp-local","protocol":"TCP"},{"containerPort":10055,"name":"metrics","protocol":"TCP"}],"readinessProbe":{"failureThreshold":3,"httpGet":{"path":"/readiness","port":8081,"scheme":"HTTP"},"initialDelaySeconds":3,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5},"resources":{"limits":{"memory":"170Mi"},"requests":{"cpu":"100m","memory":"70Mi"}},"terminationMessagePath":"/dev/termination-log","terminationMessagePolicy":"File","volumeMounts":[{"mountPath":"/kube-dns-config","name":"kube-dns-config"}]},{"args":["-v=2","-logtostderr","-configDir=/etc/k8s/dns/dnsmasq-nanny","-restartDnsmasq=true","--","-k","--cache-size=1000","--log-facility=-","--server=/cluster.local/127.0.0.1#10053","--server=/in-addr.arpa/127.0.0.1#10053","--server=/ip6.arpa/127.0.0.1#10053","--server=8.8.8.8"],"image":"gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.5","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":5,"httpGet":{"path":"/healthcheck/dnsmasq","port":10054,"scheme":"HTTP"},"initialDelaySeconds":60,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5},"name":"dnsmasq","ports":[{"containerPort":53,"name":"dns","protocol":"UDP"},{"containerPort":53,"name":"dns-tcp","protocol":"TCP"}],"resources":{"requests":{"cpu":"150m","memory":"20Mi"}},"terminationMessagePath":"/dev/termination-log","terminationMessagePolicy":"File","volumeMounts":[{"mountPath":"/etc/k8s/dns/dnsmasq-nanny","name":"kube-dns-config"}]},{"args":["--v=2","--logtostderr","--probe=kubedns,127.0.0.1:10053,kubernetes.default.svc.cluster.local,5,A","--probe=dnsmasq,127.0.0.1:53,kubernetes.default.svc.cluster.local,5,A"],"image":"gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.5","imagePullPolicy":"IfNotPresent","livenessProbe":{"failureThreshold":5,"httpGet":{"path":"/metrics","port":10054,"scheme":"HTTP"},"initialDelaySeconds":60,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5},"name":"sidecar","ports":[{"containerPort":10054,"name":"metrics","protocol":"TCP"}],"resources":{"requests":{"cpu":"10m","memory":"20Mi"}},"terminationMessagePath":"/dev/termination-log","terminationMessagePolicy":"File"}],"dnsPolicy":"Default","restartPolicy":"Always","schedulerName":"default-scheduler","securityContext":{},"serviceAccount":"kube-dns","serviceAccountName":"kube-dns","terminationGracePeriodSeconds":30,"tolerations":[{"key":"CriticalAddonsOnly","operator":"Exists"},{"effect":"NoSchedule","key":"node-role.kubernetes.io/master"}],"volumes":[{"configMap":{"defaultMode":420,"name":"kube-dns","optional":true},"name":"kube-dns-config"}]}}},"status":{"availableReplicas":1,"conditions":[{"lastTransitionTime":"2017-10-30T09:05:11Z","lastUpdateTime":"2017-10-30T09:05:11Z","message":"Deployment has minimum availability.","reason":"MinimumReplicasAvailable","status":"True","type":"Available"}],"observedGeneration":1,"readyReplicas":1,"replicas":1,"updatedReplicas":1}} - creationTimestamp: 2017-10-30T09:03:59Z - generation: 2 - labels: - k8s-app: kube-dns - name: kube-dns - namespace: kube-system - resourceVersion: "300076" - selfLink: /apis/extensions/v1beta1/namespaces/kube-system/deployments/kube-dns - uid: 4433b709-bd51-11e7-a055-80fa5b15034a -spec: - replicas: 1 - selector: - matchLabels: - k8s-app: kube-dns - strategy: - rollingUpdate: - maxSurge: 10% - maxUnavailable: 0 - type: RollingUpdate - template: - metadata: - creationTimestamp: null - labels: - k8s-app: kube-dns - spec: - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - containers: - - args: - - --domain=cluster.local. - - --dns-port=10053 - - --config-dir=/kube-dns-config - - --v=2 - env: - - name: PROMETHEUS_PORT - value: "10055" - image: gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.5 - imagePullPolicy: IfNotPresent - livenessProbe: - failureThreshold: 5 - httpGet: - path: /healthcheck/kubedns - port: 10054 - scheme: HTTP - initialDelaySeconds: 60 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 5 - name: kubedns - ports: - - containerPort: 10053 - name: dns-local - protocol: UDP - - containerPort: 10053 - name: dns-tcp-local - protocol: TCP - - containerPort: 10055 - name: metrics - protocol: TCP - readinessProbe: - failureThreshold: 3 - httpGet: - path: /readiness - port: 8081 - scheme: HTTP - initialDelaySeconds: 3 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 5 - resources: - limits: - memory: 340Mi - requests: - cpu: 200m - memory: 140Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /kube-dns-config - name: kube-dns-config - - args: - - -v=2 - - -logtostderr - - -configDir=/etc/k8s/dns/dnsmasq-nanny - - -restartDnsmasq=true - - -- - - -k - - --dns-forward-max=300 - - --cache-size=1000 - - --log-facility=- - - --server=/cluster.local/127.0.0.1#10053 - - --server=/in-addr.arpa/127.0.0.1#10053 - - --server=/ip6.arpa/127.0.0.1#10053 - - --server=8.8.8.8 - image: gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.5 - imagePullPolicy: IfNotPresent - livenessProbe: - failureThreshold: 5 - httpGet: - path: /healthcheck/dnsmasq - port: 10054 - scheme: HTTP - initialDelaySeconds: 60 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 5 - name: dnsmasq - ports: - - containerPort: 53 - name: dns - protocol: UDP - - containerPort: 53 - name: dns-tcp - protocol: TCP - resources: - requests: - cpu: 150m - memory: 20Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /etc/k8s/dns/dnsmasq-nanny - name: kube-dns-config - - args: - - --v=2 - - --logtostderr - - --probe=kubedns,127.0.0.1:10053,kubernetes.default.svc.cluster.local,5,A - - --probe=dnsmasq,127.0.0.1:53,kubernetes.default.svc.cluster.local,5,A - image: gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.5 - imagePullPolicy: IfNotPresent - livenessProbe: - failureThreshold: 5 - httpGet: - path: /metrics - port: 10054 - scheme: HTTP - initialDelaySeconds: 60 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 5 - name: sidecar - ports: - - containerPort: 10054 - name: metrics - protocol: TCP - resources: - requests: - cpu: 10m - memory: 20Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - dnsPolicy: Default - restartPolicy: Always - schedulerName: default-scheduler - securityContext: {} - serviceAccount: kube-dns - serviceAccountName: kube-dns - terminationGracePeriodSeconds: 30 - tolerations: - - key: CriticalAddonsOnly - operator: Exists - - effect: NoSchedule - key: node-role.kubernetes.io/master - volumes: - - configMap: - defaultMode: 420 - name: kube-dns - optional: true - name: kube-dns-config diff --git a/moonv4/kubernetes/templates/moon_configuration.yaml b/moonv4/kubernetes/templates/moon_configuration.yaml deleted file mode 100644 index 3bcaa533..00000000 --- a/moonv4/kubernetes/templates/moon_configuration.yaml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: moonforming - namespace: moon -spec: - template: - metadata: - name: moonforming - spec: - containers: - - name: moonforming - image: asteroide/moonforming:v1.3 - env: - - name: POPULATE_ARGS - value: "--verbose" # debug mode: --debug - volumeMounts: - - name: config-volume - mountPath: /etc/moon - volumes: - - name: config-volume - configMap: - name: moon-config - restartPolicy: Never - #backoffLimit: 4
\ No newline at end of file diff --git a/moonv4/kubernetes/templates/moon_gui.yaml b/moonv4/kubernetes/templates/moon_gui.yaml deleted file mode 100644 index 2d355216..00000000 --- a/moonv4/kubernetes/templates/moon_gui.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - namespace: moon - name: gui -spec: - replicas: 1 - template: - metadata: - labels: - app: gui - spec: - hostname: gui - containers: - - name: gui - image: wukongsun/moon_gui:v4.3.1 - env: - - name: MANAGER_HOST - value: "127.0.0.1" - - name: MANAGER_PORT - value: "30001" - - name: KEYSTONE_HOST - value: "127.0.0.1" - - name: KEYSTONE_PORT - value: "30006" - ports: - - containerPort: 80 ---- - -apiVersion: v1 -kind: Service -metadata: - name: gui - namespace: moon -spec: - ports: - - port: 80 - targetPort: 80 - nodePort: 30002 - selector: - app: gui - type: NodePort diff --git a/moonv4/kubernetes/templates/moon_manager.yaml b/moonv4/kubernetes/templates/moon_manager.yaml deleted file mode 100644 index 9d4a09a8..00000000 --- a/moonv4/kubernetes/templates/moon_manager.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: manager - namespace: moon -spec: - replicas: 3 - template: - metadata: - labels: - app: manager - spec: - hostname: manager - containers: - - name: manager - image: wukongsun/moon_manager:v4.3.1 - ports: - - containerPort: 8082 ---- - -apiVersion: v1 -kind: Service -metadata: - name: manager - namespace: moon -spec: - ports: - - port: 8082 - targetPort: 8082 - nodePort: 30001 - selector: - app: manager - type: NodePort diff --git a/moonv4/kubernetes/templates/moon_orchestrator.yaml b/moonv4/kubernetes/templates/moon_orchestrator.yaml deleted file mode 100644 index 419f2d52..00000000 --- a/moonv4/kubernetes/templates/moon_orchestrator.yaml +++ /dev/null @@ -1,40 +0,0 @@ -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - namespace: moon - name: orchestrator -spec: - replicas: 1 - template: - metadata: - labels: - app: orchestrator - spec: - hostname: orchestrator - containers: - - name: orchestrator - image: wukongsun/moon_orchestrator:v4.3 - ports: - - containerPort: 8083 - volumeMounts: - - name: config-volume - mountPath: /root/.kube - volumes: - - name: config-volume - configMap: - name: config ---- - -apiVersion: v1 -kind: Service -metadata: - name: orchestrator - namespace: moon -spec: - ports: - - port: 8083 - targetPort: 8083 - nodePort: 30003 - selector: - app: orchestrator - type: NodePort |