Hello, we're trying set up a metaflow production e...
# ask-metaflow
s
Hello, we're trying set up a metaflow production environment on EKS following this readme, and we have a few questions. In particular, we're wondering how we can set up the UI services, in addition to the argo, metadata services included in the example. Also came cross this resource for deploying metadata and UI but not sure if it's the recommended route - would someone be able to advise?
1
a
happy to help! any specific questions i can answer?
h
Also came cross this resource for deploying metadata and UI but not sure if it's the recommended route - would someone be able to advise?
Yes, you can use this Helm chart to deploy the Metaflow stack, provided you have already provisioned the cluster and database. Another great resource to learn how to provision Metaflow and integrate with Argo and Argo Events is this Tiltfile.
s
I have the following setup currently after following through the EKS example, and we would like to install the UI now. My plan was to install the UI sub-chart via helm, since the metadata service is already running on ECS. Does that sound reasonable? • Metadata service running on ECS; • A RDS postgres DB; • Argo running on a cluster set up on EKS.
h
Yep, that sounds reasonable. I think one thing to call out is that you need to make sure both the frontend and backend are exposed in the same way, and that the frontend is configured to point to the backend endpoint.
s
Thanks for the info. When you say front-end and back-end, does that correspond to
uiStatic
and
uiBackend
in this file?
Also is it configured as a repo that I can add via
helm repo add <repo_name>
?
h
Exactly: uiStatic==Fronend and uiBackend==Backend You can add it like:
Copy code
helm repo add metaflow-tools <https://outerbounds.github.io/metaflow-tools>
👍 1
s
Thanks much, I'll give it a shot.
The UI has worked for me when I port-forwarded both the
uiStatic
and
uiBackend
ports to localhost. How should I set the config for if I wanted to expose them under a host / dns name? I have it set as:
Copy code
...
metaflow-ui:
  ...
  ingress:
    annotations: {}
    className: ""
    enabled: true
    hosts:
    - host: metaflow-ui-eks
    tls: []
  uiBackend:
    service:
      port: 8083
      type: ClusterIP
  uiStatic:
    service:
      port: 3000
      type: ClusterIP
And I tried to hit
<http://metaflow-ui-eks:3000>
which is not able to connect. Does someone happen to know if I'm missing something obvious?