From 6572a886629f22037015c3709fa3ea4f9880accc Mon Sep 17 00:00:00 2001 From: marvzhang Date: Thu, 27 Feb 2020 14:21:42 +0800 Subject: [PATCH 1/3] updated docker-compose.yml --- docker-compose.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 9d5acbb3..e497e6bc 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -47,6 +47,9 @@ services: depends_on: - mongo - redis + environment: + # MONGO_INITDB_ROOT_USERNAME: username + # MONGO_INITDB_ROOT_PASSWORD: password # volumes: # - "/var/crawlab/log:/var/logs/crawlab" # log persistent 日志持久化 mongo: From 2910ffdc5e8be05a3a11905057ddae8bd98b3c3a Mon Sep 17 00:00:00 2001 From: marvzhang Date: Thu, 27 Feb 2020 14:24:04 +0800 Subject: [PATCH 2/3] updated docker-compose.yml --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index e497e6bc..752f162f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -47,7 +47,7 @@ services: depends_on: - mongo - redis - environment: + # environment: # MONGO_INITDB_ROOT_USERNAME: username # MONGO_INITDB_ROOT_PASSWORD: password # volumes: From 4a91ee62a95e5c00b104453d7c72a857ff964c2a Mon Sep 17 00:00:00 2001 From: marvzhang Date: Thu, 27 Feb 2020 18:18:33 +0800 Subject: [PATCH 3/3] added k8s files --- k8s/crawlab-master.yaml | 43 +++++++++++++++++++++++++++++++++++++++++ k8s/crawlab-worker.yaml | 27 ++++++++++++++++++++++++++ k8s/mongo-pv.yaml | 28 +++++++++++++++++++++++++++ k8s/mongo.yaml | 41 +++++++++++++++++++++++++++++++++++++++ k8s/redis.yaml | 34 ++++++++++++++++++++++++++++++++ 5 files changed, 173 insertions(+) create mode 100644 k8s/crawlab-master.yaml create mode 100644 k8s/crawlab-worker.yaml create mode 100644 k8s/mongo-pv.yaml create mode 100644 k8s/mongo.yaml create mode 100644 k8s/redis.yaml diff --git a/k8s/crawlab-master.yaml b/k8s/crawlab-master.yaml new file mode 100644 index 00000000..b87f6881 --- /dev/null +++ b/k8s/crawlab-master.yaml @@ -0,0 +1,43 @@ +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: Deployment +metadata: + name: crawlab-master + namespace: crawlab +spec: + strategy: + type: Recreate + selector: + matchLabels: + app: crawlab-master + template: + metadata: + labels: + app: crawlab-master + spec: + containers: + - image: tikazyq/crawlab:latest + name: crawlab + env: + - name: CRAWLAB_SERVER_MASTER + value: "Y" + - name: CRAWLAB_MONGO_HOST + value: "mongo" + - name: CRAWLAB_REDIS_ADDRESS + value: "redis" + ports: + - containerPort: 8080 + name: crawlab diff --git a/k8s/crawlab-worker.yaml b/k8s/crawlab-worker.yaml new file mode 100644 index 00000000..b54a7796 --- /dev/null +++ b/k8s/crawlab-worker.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: crawlab-worker + namespace: crawlab +spec: + replicas: 4 + strategy: + type: Recreate + selector: + matchLabels: + app: crawlab-worker + template: + metadata: + labels: + app: crawlab-worker + spec: + containers: + - image: tikazyq/crawlab:latest + name: crawlab + env: + - name: CRAWLAB_SERVER_MASTER + value: "N" + - name: CRAWLAB_MONGO_HOST + value: "mongo" + - name: CRAWLAB_REDIS_ADDRESS + value: "redis" diff --git a/k8s/mongo-pv.yaml b/k8s/mongo-pv.yaml new file mode 100644 index 00000000..ad914131 --- /dev/null +++ b/k8s/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/k8s/mongo.yaml b/k8s/mongo.yaml new file mode 100644 index 00000000..9b5bd3b6 --- /dev/null +++ b/k8s/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/k8s/redis.yaml b/k8s/redis.yaml new file mode 100644 index 00000000..49df8dde --- /dev/null +++ b/k8s/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