69 lines
2.3 KiB
ReStructuredText
69 lines
2.3 KiB
ReStructuredText
.. Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
.. http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
.. Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
|
|
Using additional containers
|
|
===========================
|
|
|
|
Sidecar Containers
|
|
------------------
|
|
|
|
If you want to deploy your own sidecar container, you can add it through the ``extraContainers`` parameter.
|
|
You can define different containers for the scheduler, webserver/api-server, Kubernetes/Celery workers, triggerer, dag processor, flower, create user job and migrate database job pods.
|
|
|
|
For example, sidecars that sync Dags from object storage:
|
|
|
|
.. code-block:: yaml
|
|
:caption: values.yaml
|
|
|
|
scheduler:
|
|
extraContainers:
|
|
- name: s3-sync
|
|
image: my-company/s3-sync:latest
|
|
imagePullPolicy: Always
|
|
|
|
workers:
|
|
kubernetes:
|
|
extraContainers:
|
|
- name: s3-sync
|
|
image: my-company/s3-sync:latest
|
|
imagePullPolicy: Always
|
|
|
|
.. note::
|
|
|
|
If you use ``workers.kubernetes.extraContainers`` (dedicated for ``KubernetesExecutor``), you are responsible for signaling
|
|
sidecars to exit when the main container finishes so Airflow can continue the worker shutdown process.
|
|
|
|
|
|
Init Containers
|
|
---------------
|
|
|
|
You can also deploy extra init containers through the ``extraInitContainers`` parameter.
|
|
You can define different containers for the scheduler, webserver/api-server, Celery/Kubernetes workers, triggerer, dag processor, create user job and migrate database job pods.
|
|
|
|
For example, an init container that just says hello:
|
|
|
|
.. code-block:: yaml
|
|
:caption: values.yaml
|
|
|
|
scheduler:
|
|
extraInitContainers:
|
|
- name: hello
|
|
image: debian
|
|
args:
|
|
- echo
|
|
- hello
|