Skip to content
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

Apps component: centraldashboard #116

Closed
sylus opened this issue Jan 17, 2022 · 1 comment
Closed

Apps component: centraldashboard #116

sylus opened this issue Jan 17, 2022 · 1 comment
Assignees
Labels
size/S ~1 day

Comments

@sylus
Copy link
Member

sylus commented Jan 17, 2022

Overview

EPIC: Kubeflow Upgrade Planning

Component Local Manifests Path Upstream Initial Work
centraldashboard apps/centraldashboard v1.3.1 #35

Adjustments

  • Add image pull secret to centraldashboard deployment
  • Change REGISTRATION_FLOW to true in centraldashboard deployment
  • Change centraldashboard links in configmap

Kubeflow V2 Manifests

The following is the kustomize that was used in Kubeflow V2:

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
patchesStrategicMerge:
- deployment.yaml
- links-configmap.yaml
resources:
- ../../../.cache/manifests/manifests-1.2-branch/stacks/azure/application/centraldashboard

AAW Dev / Prod Live Manifests

At the moment there is no difference in state then what is overridden above.

Note: While most everything 95% would have been automated, stored as config and is using what is referenced above. I believe a few things could have been done as manual adjustments that we should make sure we are keeping. Largely any manual yaml adjustments would have been documented in high level GitHub issues or tracked in the YAML repository under the AAW group.

Kubeflow V3 Manifests

The following is the P.R. that will be merged into the main branch for Kubeflow V3:

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

resources:
- github.com/kubeflow/manifests/apps/centraldashboard/upstream/overlays/istio?ref=v1.3.1

patchesStrategicMerge:
- deployment.yaml
- centraldashboard-config.yaml

Testing

Usually a good idea to make sure all of the overrides are working is to run the following command and verify all of the yaml output for the component is what you expect and all of the overrides are taken into account.

  • The centraldashboard deployment has been modified correctly (image, imagepullsecrets, and envvar)
  • The centraldashboard-config configmap has been modified correctly
task stack:aaw:preview

Note: The command above will render all of the manifests into manifests top level folder with the name aaw.yaml. A trick to keep the yaml output small is under stacks/aaw/kustomization.yaml to only have the component you wish to test referenced.

@sylus
Copy link
Member Author

sylus commented Jan 18, 2022

Hi @wg102 I hope this P.R. looks good to you? I simplified it a bit but just in case I got something wrong don't hesitate to let me know. I called the different configmap name so I was able to override it directly and for the deployment I added the environment var there as well since it would be a strategic merge. The final outputs look good to me but hope didn't miss anything.

# Note I commented out all other components in `stack/aaw`
task stack:aaw:preview

Here is the Deployment spec:

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: centraldashboard
    app.kubernetes.io/component: centraldashboard
    app.kubernetes.io/name: centraldashboard
    kustomize.component: centraldashboard
  name: centraldashboard
  namespace: kubeflow
spec:
  replicas: 1
  selector:
    matchLabels:
      app: centraldashboard
      app.kubernetes.io/component: centraldashboard
      app.kubernetes.io/name: centraldashboard
      kustomize.component: centraldashboard
  template:
    metadata:
      annotations:
        sidecar.istio.io/inject: "false"
      labels:
        app: centraldashboard
        app.kubernetes.io/component: centraldashboard
        app.kubernetes.io/name: centraldashboard
        kustomize.component: centraldashboard
    spec:
      containers:
      - env:
        - name: REGISTRATION_FLOW
          value: "true"
        - name: USERID_HEADER
          value: kubeflow-userid
        - name: USERID_PREFIX
          value: ""
        - name: PROFILES_KFAM_SERVICE_HOST
          value: profiles-kfam.kubeflow
        - name: DASHBOARD_LINKS_CONFIGMAP
          value: centraldashboard-config
        image: k8scc01covidacr.azurecr.io/kubeflow/centraldashboard:a96d1cd8523f895904051e122fa98db5c0017bd6
        imagePullPolicy: IfNotPresent
        livenessProbe:
          httpGet:
            path: /healthz
            port: 8082
          initialDelaySeconds: 30
          periodSeconds: 30
        name: centraldashboard
        ports:
        - containerPort: 8082
          protocol: TCP
      imagePullSecrets:
      - name: k8scc01covidacr-registry-connection
      serviceAccountName: centraldashboard

@sylus sylus closed this as completed Jan 18, 2022
@sylus sylus self-assigned this Jan 18, 2022
@sylus sylus added the size/S ~1 day label Jan 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size/S ~1 day
Projects
None yet
Development

No branches or pull requests

1 participant