-
-
Notifications
You must be signed in to change notification settings - Fork 2
feat: Airflow Listener integration #604
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First batch, tests work fine, will do some more manual testing.
Co-authored-by: Malte Sander <malte.sander.it@gmail.com>
Co-authored-by: Malte Sander <malte.sander.it@gmail.com>
Co-authored-by: Malte Sander <malte.sander.it@gmail.com>
Co-authored-by: Malte Sander <malte.sander.it@gmail.com>
Re-ran tests locally: 🟢 |
Co-authored-by: Natalie Klestrup Röijezon <nat@nullable.se>
Co-authored-by: Natalie Klestrup Röijezon <nat@nullable.se>
Co-authored-by: Natalie Klestrup Röijezon <nat@nullable.se>
Thanks @adwk67 for addressing the changes from the ADR! I didn't look at the code, as @maltesander and @nightkr already did, but installed the operator and tried it out. Small notes on what I checked: Services now look good! They match the decision https://github.com/stackabletech/decisions/issues/51: ➜ airflow-operator git:(feat/integrate-listener-operator) ✗ k get svc | grep airflow kind-kind
airflow-scheduler-default-metrics ClusterIP None <none> 9102/TCP 3m1s
airflow-webserver-default NodePort 10.96.33.78 <none> 8080:30139/TCP 3m1s
airflow-webserver-default-metrics ClusterIP None <none> 9102/TCP 3m1s
airflow-worker-default-metrics ClusterIP None <none> 9102/TCP 3m1s stacklet list looks nice, the metrics are not shown any more (which is fine I'd say): ➜ airflow-operator git:(feat/integrate-listener-operator) ✗ stackablectl stacklet list kind-kind
┌─────────┬─────────┬───────────┬─────────────────────────────────────────────────┬─────────────────────────────────┐
│ PRODUCT ┆ NAME ┆ NAMESPACE ┆ ENDPOINTS ┆ CONDITIONS │
╞═════════╪═════════╪═══════════╪═════════════════════════════════════════════════╪═════════════════════════════════╡
│ airflow ┆ airflow ┆ default ┆ webserver-default-http http://172.18.0.2:30139 ┆ Available, Reconciling, Running │
└─────────┴─────────┴───────────┴─────────────────────────────────────────────────┴─────────────────────────────────┘ I can also sprinkle in some more rolegroups, looks good: ➜ airflow-operator git:(feat/integrate-listener-operator) ✗ k get svc | grep airflow kind-kind
airflow-scheduler-default-metrics ClusterIP None <none> 9102/TCP 7m55s
airflow-webserver-big NodePort 10.96.43.47 <none> 8080:31748/TCP 15s
airflow-webserver-big-metrics ClusterIP None <none> 9102/TCP 15s
airflow-webserver-default NodePort 10.96.33.78 <none> 8080:30139/TCP 7m55s
airflow-webserver-default-metrics ClusterIP None <none> 9102/TCP 7m55s
airflow-worker-default-metrics ClusterIP None <none> 9102/TCP 7m55s
airflow-worker-with-gpu-metrics ClusterIP None <none> 9102/TCP 15s ┌─────────┬─────────┬───────────┬─────────────────────────────────────────────────┬────────────────────────────────────────────┐
│ PRODUCT ┆ NAME ┆ NAMESPACE ┆ ENDPOINTS ┆ CONDITIONS │
╞═════════╪═════════╪═══════════╪═════════════════════════════════════════════════╪════════════════════════════════════════════╡
│ airflow ┆ airflow ┆ default ┆ webserver-big-http http://172.18.0.2:31748 ┆ Unavailable: See [1], Reconciling, Running │
│ ┆ ┆ ┆ webserver-default-http http://172.18.0.2:30139 ┆ │
└─────────┴─────────┴───────────┴─────────────────────────────────────────────────┴──────────────────────────────────────────── And the metrics services have the correct scrape label: ➜ airflow-operator git:(feat/integrate-listener-operator) ✗ k get svc -l prometheus.io/scrape=true kind-kind
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
airflow-scheduler-default-metrics ClusterIP None <none> 9102/TCP 17m
airflow-webserver-big-metrics ClusterIP None <none> 9102/TCP 9m56s
airflow-webserver-default-metrics ClusterIP None <none> 9102/TCP 17m
airflow-worker-default-metrics ClusterIP None <none> 9102/TCP 17m
airflow-worker-with-gpu-metrics ClusterIP None <none> 9102/TCP 9m56s Afterwards I ran Metrics show up, e.g.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM if tests pass
Thanks - jenkins run, and a new issue to re-visit various things mentioned above: #622 Ran it again on a manually-provisioned replicated k3s cluster:
|
Description
fixes: #580
Jenkins tests 🟢
Openshift tests 🟢 (logging test passed when run again in isolation)
Tests after https://github.com/stackabletech/decisions/issues/51 changes: 🟢 Jenkins
Definition of Done Checklist