এয়ারফ্লো শিডিয়ুলার কুবারনেটস এক্সিকিউটারের সাথে শুরু করতে ব্যর্থ


12

আমি https://github.com/helm/charts/tree/master/stable/airflow হেল্ট চার্ট ব্যবহার করছি এবং এতে কুবারনেটস puckle/docker-airflowইনস্টল থাকা v1.10.8 চিত্র তৈরি করছি এবং সেই চিত্রটি হেলমে চার্টে ব্যবহার করছি, তবে আমি পেতে থাকি

  File "/usr/local/bin/airflow", line 37, in <module>
    args.func(args)
  File "/usr/local/lib/python3.7/site-packages/airflow/bin/cli.py", line 1140, in initdb
    db.initdb(settings.RBAC)
  File "/usr/local/lib/python3.7/site-packages/airflow/utils/db.py", line 332, in initdb
    dagbag = models.DagBag()
  File "/usr/local/lib/python3.7/site-packages/airflow/models/dagbag.py", line 95, in __init__
    executor = get_default_executor()
  File "/usr/local/lib/python3.7/site-packages/airflow/executors/__init__.py", line 48, in get_default_executor
    DEFAULT_EXECUTOR = _get_executor(executor_name)
  File "/usr/local/lib/python3.7/site-packages/airflow/executors/__init__.py", line 87, in _get_executor
    return KubernetesExecutor()
  File "/usr/local/lib/python3.7/site-packages/airflow/contrib/executors/kubernetes_executor.py", line 702, in __init__
    self.kube_config = KubeConfig()
  File "/usr/local/lib/python3.7/site-packages/airflow/contrib/executors/kubernetes_executor.py", line 283, in __init__
    self.kube_client_request_args = json.loads(kube_client_request_args)
  File "/usr/local/lib/python3.7/json/__init__.py", line 348, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/lib/python3.7/json/decoder.py", line 353, in raw_decode
    obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

আমার সময়সূচীতে, বিভিন্ন উত্সের পরামর্শ অনুসারে, আমি সেটিংস চেষ্টা করেছিলাম:

AIRFLOW__KUBERNETES__KUBE_CLIENT_REQUEST_ARGS: {"_request_timeout" : [60,60] }

আমার শিরোনাম মান। যে কাজ করে না কারও কারওই ধারনা নেই আমি কী মিস করছি?

এখানে আমার মান


airflow:
  image:
     repository: airflow-docker-local
     tag: 1.10.8
  executor: Kubernetes
  service:
    type: LoadBalancer
  config:
    AIRFLOW__KUBERNETES__WORKER_CONTAINER_REPOSITORY: airflow-docker-local
    AIRFLOW__KUBERNETES__WORKER_CONTAINER_TAG: 1.10.8
    AIRFLOW__KUBERNETES__WORKER_CONTAINER_IMAGE_PULL_POLICY: Never

    AIRFLOW__KUBERNETES__WORKER_SERVICE_ACCOUNT_NAME: airflow
    AIRFLOW__KUBERNETES__DAGS_VOLUME_CLAIM: airflow
    AIRFLOW__KUBERNETES__NAMESPACE: airflow
    AIRFLOW__KUBERNETES__KUBE_CLIENT_REQUEST_ARGS: {"_request_timeout" : [60,60] }

    AIRFLOW__CORE__SQL_ALCHEMY_CONN: postgresql+psycopg2://postgres:airflow@airflow-postgresql:5432/airflow

persistence:
  enabled: true
  existingClaim: ''

workers:
  enabled: false

postgresql:
  enabled: true

redis:
  enabled: false

সম্পাদনা:

হাল values.yaml সেট এনভায়রনমেন্ট ভেরিয়েবল করার জন্য বিভিন্ন প্রচেষ্টা যে পরে আমি যোগ, কাজ করে নি (অর্থের মনোযোগ দ্বিগুণ করার এবং একক কোট)

ENV AIRFLOW__KUBERNETES__KUBE_CLIENT_REQUEST_ARGS='{"_request_timeout" : [60,60] }'

থেকে Dockerfile এখানে: https://github.com/puckel/docker-airflow/blob/1.10.9/Dockerfile#L19 পর যে আমার airflow-schedulerশুঁটি শুরু কিন্তু তারপর আমি আমার নির্ধারণকারী শুঁটি থাকা ত্রুটির নিম্নলিখিত পেয়ে রাখা।

Process KubernetesJobWatcher-9: Traceback (most recent call last): 
    File "/usr/local/lib/python3.7/site-packages/urllib3/contrib/pyopenssl.py", line 313, 
    in recv_into return self.connection.recv_into(*args, **kwargs) File "/usr/local/lib/python3.7/site-packages/OpenSSL/SSL.py", 
    line 1840, in recv_into self._raise_ssl_error(self._ssl, result) File "/usr/local/lib/python3.7/site-packages/OpenSSL/SSL.py", 
    line 1646, in _raise_ssl_error raise WantReadError() OpenSSL.SSL.WantReadError

এখানে একই সমস্যা। আমি চেক আউট docker-airflow:1.10.8এবং L931 পরিবর্তিত সরানো config/airflow.cfgকরতে kube_client_request_args =এবং এই চিত্র ব্যবহার করুন। কাজ দেখে মনে হচ্ছে
রাফ

এখানে একই সমস্যা :-(
লিয়োরএইচ

উত্তর:


3

হেলম মানের জন্য, টেমপ্লেটটি এমন একটি লুপ ব্যবহার করে যা airflow.configমানচিত্রটিকে ডাবল উদ্ধৃতিতে স্থাপন করে" । এর অর্থ হ'ল "আউটপুট টেম্প্লেটড ওয়াইএএমএলকে বৈধ হওয়ার জন্য কোনও মানদণ্ডের মধ্যে কোনওটিকে এড়িয়ে যাওয়া দরকার।

airflow:
  config:
    AIRFLOW__KUBERNETES__KUBE_CLIENT_REQUEST_ARGS: '{\"_request_timeout\":60}'

এটি মোতায়েন করে এবং রান করে (তবে আমি পরীক্ষা শেষের শেষ করিনি)

এই গিথুব ইস্যু অনুসারে , পাইথন শিডিউলার এসএসএল টাইমআউট কোনও সমস্যা নাও হতে পারে কারণ 60 সেকেন্ডের সংযোগের সময়সীমা শেষ হওয়ার পরে পর্যবেক্ষক আবার শুরু করেন।


হ্যাঁ কাজ করেছেন, ধন্যবাদ :-)
লিয়োরএইচ

কোন সমস্যা নাই! আপনি কি শিডিয়ুলার কাজ করে যাচাই করতে সক্ষম হন, এটি প্রতি X সেকেন্ডে কেবল সংযোগ স্থাপন করে?
ম্যাট

হ্যাঁ, শিডিউলার কাজ করে। যদিও অন্যান্য ইস্যুতে চলছে :-(
লিয়োরএইচ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.