From 3c7bd0bff0360e80a636133a258a47500dcd5e9f Mon Sep 17 00:00:00 2001 From: marvzhang Date: Thu, 12 Mar 2020 08:52:16 +0800 Subject: [PATCH] updated k8s yaml --- devops/master/crawlab-master.yaml | 57 +++++++++++++++++++++++++++++++ devops/master/crawlab-worker.yaml | 35 +++++++++++++++++++ devops/master/mongo-pv.yaml | 28 +++++++++++++++ devops/master/mongo.yaml | 41 ++++++++++++++++++++++ devops/master/ns.yaml | 4 +++ devops/master/redis.yaml | 34 ++++++++++++++++++ 6 files changed, 199 insertions(+) create mode 100644 devops/master/crawlab-master.yaml create mode 100644 devops/master/crawlab-worker.yaml create mode 100644 devops/master/mongo-pv.yaml create mode 100644 devops/master/mongo.yaml create mode 100644 devops/master/ns.yaml create mode 100644 devops/master/redis.yaml diff --git a/devops/master/crawlab-master.yaml b/devops/master/crawlab-master.yaml new file mode 100644 index 00000000..21a06069 --- /dev/null +++ b/devops/master/crawlab-master.yaml @@ -0,0 +1,57 @@ +apiVersion: v1 +kind: Service +metadata: + name: crawlab + namespace: crawlab +spec: + ports: + - port: 8080 + targetPort: 8080 + nodePort: 30088 + selector: + app: crawlab-master + type: NodePort +--- +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: crawlab-master + namespace: crawlab +spec: + serviceName: crawlab-master + selector: + matchLabels: + app: crawlab-master + template: + metadata: + labels: + app: crawlab-master + spec: + containers: + - image: tikazyq/crawlab:latest + imagePullPolicy: Always + name: crawlab + env: + - name: CRAWLAB_SERVER_MASTER + value: "Y" + - name: CRAWLAB_MONGO_HOST + value: "mongo" + - name: CRAWLAB_REDIS_ADDRESS + value: "redis" + - name: CRAWLAB_SETTING_ALLOWREGISTER + value: "Y" + - name: CRAWLAB_SERVER_LANG_NODE + value: "N" + - name: CRAWLAB_SERVER_LANG_JAVA + value: "N" + - name: CRAWLAB_SERVER_LANG_DOTNET + value: "N" + - name: CRAWLAB_SERVER_REGISTER_TYPE + value: "hostname" + - name: CRAWLAB_SERVER_DEMOSPIDERS + value: "Y" + - name: CRAWLAB_SERVER_ENABLETUTORIAL + value: "Y" + ports: + - containerPort: 8080 + name: crawlab \ No newline at end of file diff --git a/devops/master/crawlab-worker.yaml b/devops/master/crawlab-worker.yaml new file mode 100644 index 00000000..2ee052d0 --- /dev/null +++ b/devops/master/crawlab-worker.yaml @@ -0,0 +1,35 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: crawlab-worker + namespace: crawlab +spec: + serviceName: crawlab-worker + replicas: 2 + selector: + matchLabels: + app: crawlab-worker + template: + metadata: + labels: + app: crawlab-worker + spec: + containers: + - image: tikazyq/crawlab:latest + imagePullPolicy: Always + name: crawlab + env: + - name: CRAWLAB_SERVER_MASTER + value: "N" + - name: CRAWLAB_MONGO_HOST + value: "mongo" + - name: CRAWLAB_REDIS_ADDRESS + value: "redis" + - name: CRAWLAB_SERVER_LANG_NODE + value: "Y" + - name: CRAWLAB_SERVER_LANG_JAVA + value: "Y" + - name: CRAWLAB_SERVER_LANG_DOTNET + value: "Y" + - name: CRAWLAB_SERVER_REGISTER_TYPE + value: "hostname" diff --git a/devops/master/mongo-pv.yaml b/devops/master/mongo-pv.yaml new file mode 100644 index 00000000..ad914131 --- /dev/null +++ b/devops/master/mongo-pv.yaml @@ -0,0 +1,28 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: mongo-pv-volume + namespace: crawlab + labels: + type: local +spec: + storageClassName: manual + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/data/k8s/mongodb/data" +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: mongo-pv-claim + namespace: crawlab +spec: + storageClassName: manual + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi \ No newline at end of file diff --git a/devops/master/mongo.yaml b/devops/master/mongo.yaml new file mode 100644 index 00000000..9b5bd3b6 --- /dev/null +++ b/devops/master/mongo.yaml @@ -0,0 +1,41 @@ +apiVersion: v1 +kind: Service +metadata: + name: mongo + namespace: crawlab +spec: + ports: + - port: 27017 + selector: + app: mongo + clusterIP: None +--- +apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2 +kind: Deployment +metadata: + name: mongo + namespace: crawlab +spec: + selector: + matchLabels: + app: mongo + strategy: + type: Recreate + template: + metadata: + labels: + app: mongo + spec: + containers: + - image: mongo:4 + name: mongo + ports: + - containerPort: 27017 + name: mongo + volumeMounts: + - name: mongo-persistent-storage + mountPath: /data/db + volumes: + - name: mongo-persistent-storage + persistentVolumeClaim: + claimName: mongo-pv-claim \ No newline at end of file diff --git a/devops/master/ns.yaml b/devops/master/ns.yaml new file mode 100644 index 00000000..ff3d460b --- /dev/null +++ b/devops/master/ns.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: crawlab \ No newline at end of file diff --git a/devops/master/redis.yaml b/devops/master/redis.yaml new file mode 100644 index 00000000..49df8dde --- /dev/null +++ b/devops/master/redis.yaml @@ -0,0 +1,34 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis + namespace: crawlab +spec: + ports: + - port: 6379 + selector: + app: redis + clusterIP: None +--- +apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2 +kind: Deployment +metadata: + name: redis + namespace: crawlab +spec: + selector: + matchLabels: + app: redis + strategy: + type: Recreate + template: + metadata: + labels: + app: redis + spec: + containers: + - image: redis + name: redis + ports: + - containerPort: 6379 + name: redis \ No newline at end of file