k8s: support for using a pre-made persistent volume/claim for crawling, configurable via CRAWLER_PV_CLAIM, otherwise using emptyDir
k8s: ability to set deployment scale for frontend as well
This commit is contained in:
parent
912004751d
commit
4b2f89db91
@ -56,6 +56,14 @@ class K8SManager:
|
||||
self.requests_mem = os.environ["CRAWLER_REQUESTS_MEM"]
|
||||
self.limits_mem = os.environ["CRAWLER_LIMITS_MEM"]
|
||||
|
||||
self.crawl_volume = {"name": "crawl-data"}
|
||||
# if set, use persist volume claim for crawls
|
||||
crawl_pv_claim = os.environ.get("CRAWLER_PV_CLAIM")
|
||||
if crawl_pv_claim:
|
||||
self.crawl_volume["persistentVolumeClaim"] = {"claimName": crawl_pv_claim}
|
||||
else:
|
||||
self.crawl_volume["emptyDir"] = {}
|
||||
|
||||
self.loop = asyncio.get_running_loop()
|
||||
self.loop.create_task(self.run_event_loop())
|
||||
self.loop.create_task(self.init_redis(self.redis_url))
|
||||
@ -742,7 +750,7 @@ class K8SManager:
|
||||
],
|
||||
},
|
||||
},
|
||||
{"name": "crawl-data", "emptyDir": {}},
|
||||
self.crawl_volume,
|
||||
],
|
||||
"restartPolicy": "Never",
|
||||
"terminationGracePeriodSeconds": self.grace_period,
|
||||
|
@ -21,6 +21,10 @@ data:
|
||||
CRAWLER_REQUESTS_MEM: "{{ .Values.crawler_requests_memory }}"
|
||||
CRAWLER_LIMITS_MEM: "{{ .Values.crawler_limits_memory }}"
|
||||
|
||||
{{- if .Values.crawler_pv_claim }}
|
||||
CRAWLER_PV_CLAIM: "{{ .Values.crawler_pv_claim }}"
|
||||
{{- end }}
|
||||
|
||||
REDIS_URL: "{{ .Values.redis_url }}"
|
||||
|
||||
REDIS_CRAWLS_DONE_KEY: "crawls-done"
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
matchLabels:
|
||||
app: {{ .Values.name }}
|
||||
role: frontend
|
||||
replicas: 1
|
||||
replicas: {{ .Values.nginx_num_replicas | default 1 }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
|
@ -45,6 +45,8 @@ api_limits_memory: "192Mi"
|
||||
nginx_image: "nginx"
|
||||
nginx_pull_policy: "IfNotPresent"
|
||||
|
||||
nginx_num_replicas: 1
|
||||
|
||||
nginx_requests_cpu: "3m"
|
||||
nginx_limits_cpu: "10m"
|
||||
|
||||
@ -98,6 +100,10 @@ crawler_pull_policy: "IfNotPresent"
|
||||
|
||||
crawler_namespace: "crawlers"
|
||||
|
||||
# optional: enable to use a persist volume claim for all crawls
|
||||
# can be enabled to use a multi-write shared filesystem
|
||||
# crawler_pv_claim: "nfs-shared-crawls"
|
||||
|
||||
# num retries
|
||||
crawl_retries: 3
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user