Page MenuHomePhabricator

Migrate airflow-search instance webserver to kubernetes
Closed, ResolvedPublic

Description

After the migration of the airflow-analytics-test instance webserver to kubernetes, we are ready to begin the migration of the remaining airflow instance webservers to kubernetes following the guide on https://wikitech.wikimedia.org/wiki/Data_Platform/Systems/Airflow/Kubernetes#Migrating_an_existing_instance

This tracks the migration of the search instance to dse-k8s

  • Create the k8s namespaces
  • Create the k8s user kubeconfigs
  • Create the wikimedia.org public subdomains
  • Create the OIDC/CAS configuration
  • add the secret key already found in /etc/helmfile-defaults/private/dse-k8s_services/airflow-analytics-test/dse-k8s-eqiad.yaml on the deployment secret to /srv/git/private/hieradata
  • add keytab to the puppet private repo
  • create aiflow-search-ops ldap group
  • create admin_ng relevant config
  • deploy admin_ng
  • Defining the webserver configuration
  • Deploy the application
  • Enable ATS traffic redirection and caching

Event Timeline

BTullis renamed this task from Migrate airflow-search instance to kubernetes to Migrate airflow-search instance webserver to kubernetes.Nov 8 2024, 10:02 AM
BTullis updated the task description. (Show Details)
Gehel triaged this task as High priority.Nov 8 2024, 2:22 PM
brouberol changed the task status from Open to In Progress.Nov 14 2024, 8:17 AM
brouberol claimed this task.

Change #1091175 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/deployment-charts@master] airflow-search: define k8s namespace

https://gerrit.wikimedia.org/r/1091175

Change #1091176 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/deployment-charts@master] airflow-search: register tenant namespace in ceph-csi and cloudnative-pg operator configs

https://gerrit.wikimedia.org/r/1091176

Change #1091177 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/deployment-charts@master] airflow-search: define helmfile and values

https://gerrit.wikimedia.org/r/1091177

Change #1091179 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/puppet@production] airflow-search: define user kubeconfigs

https://gerrit.wikimedia.org/r/1091179

Change #1091180 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/puppet@production] airflow-search: define OIDC config

https://gerrit.wikimedia.org/r/1091180

Change #1091181 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/puppet@production] airflow-search: define ATS mapping and cache config

https://gerrit.wikimedia.org/r/1091181

brouberol@krb1001:~$ sudo kadmin.local addprinc -randkey analytics-search/airflow-search.discovery.wmnet@WIKIMEDIA
brouberol@krb1001:~$ sudo kadmin.local addprinc -randkey airflow/airflow-search.discovery.wmnet@WIKIMEDIA
brouberol@krb1001:~$ sudo kadmin.local addprinc -randkey HTTP/airflow-search.discovery.wmnet@WIKIMEDIA
brouberol@krb1001:~$ sudo kadmin.local ktadd -norandkey -k search.keytab analytics-search/airflow-search.discovery.wmnet airflow/airflow-search.discovery.wmnet@WIKIMEDIA HTTP/airflow-search.discovery.wmnet@WIKIMEDIA
Entry for principal analytics-search/airflow-search.discovery.wmnet with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:search.keytab.
Entry for principal airflow/airflow-search.discovery.wmnet@WIKIMEDIA with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:search.keytab.
Entry for principal HTTP/airflow-search.discovery.wmnet@WIKIMEDIA with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:search.keytab.

@BTullis who should we add to the analytics-search-ops LDAP group? These users?

# puppet/modules/admin/data/data.yaml
...
  analytics-search-users:
    gid: 771
    description: Group of users for managing search related analytics jobs
    members: [ebernhardson, dcausse, gehel, bearloga, tjones, pfischer, dr0ptp4kt] # <--
    privileges: ['ALL = (analytics-search) NOPASSWD: ALL']
    system_members: [analytics-search]

Change #1091179 merged by Brouberol:

[operations/puppet@production] airflow-search: define user kubeconfigs

https://gerrit.wikimedia.org/r/1091179

Change #1091175 merged by Brouberol:

[operations/deployment-charts@master] airflow-search: define k8s namespace

https://gerrit.wikimedia.org/r/1091175

Change #1091176 merged by Brouberol:

[operations/deployment-charts@master] airflow-search: register tenant namespace in ceph-csi and cloudnative-pg operator configs

https://gerrit.wikimedia.org/r/1091176

Change #1091193 had a related patch set uploaded (by Stevemunene; author: Stevemunene):

[labs/private@master] Add airflow oidc clients for pcc

https://gerrit.wikimedia.org/r/1091193

Change #1091193 merged by Stevemunene:

[labs/private@master] Add airflow oidc clients for pcc

https://gerrit.wikimedia.org/r/1091193

Change #1091180 merged by Brouberol:

[operations/puppet@production] airflow-search: define OIDC config

https://gerrit.wikimedia.org/r/1091180

Change #1091177 merged by Brouberol:

[operations/deployment-charts@master] airflow-search: define helmfile and values

https://gerrit.wikimedia.org/r/1091177

Change #1091181 merged by Brouberol:

[operations/puppet@production] airflow-search: define ATS mapping and cache config

https://gerrit.wikimedia.org/r/1091181

brouberol updated the task description. (Show Details)

Change #1091523 had a related patch set uploaded (by Brouberol; author: Brouberol):

[operations/puppet@production] airflow-search: set kubeconfig owner group to analytics-delployers

https://gerrit.wikimedia.org/r/1091523

Change #1091523 merged by Brouberol:

[operations/puppet@production] airflow-search: set kubeconfig owner group to analytics-delployers

https://gerrit.wikimedia.org/r/1091523