New RunLLM response generated: >>>*# Question* I ...
# runllm-flyte-trial
a
New RunLLM response generated: >>>*# Question* I have an error with Flyte Deck too. As we did setup ingress for our flyte and using minio and postgres as flyte dependency on k3s server. When we are trying to look for Flyte Deck option in flyte we receive following error.
Copy code
vendor_react-aa7f8ae5.js:2  Mixed Content: The page at 'https://<ingress-domain-name>/console/projects/flytesnacks/domains/development/executions/f14481fe8200f4bbba1b' was loaded over HTTPS, but requested an insecure frame '<http://minio.flyte.svc.cluster.local:9200/flyte-bucket/metadata/propeller/flytesnacks-development-f14481fe8200f4bbba1b/n2/data/0/deck.html?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=minio-flyte%2F20240724%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240724T071925Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=31657b5da33a0813cce3daa359001baeb03191e81fac0e0fe72df40c31449b42>'. This request has been blocked; the content must be served over HTTPS.
We have certain limitations with security that we can not make a ingress for minio and can't public it on our server. And this minio.flyte.svc.cluster can't be accessible on different server on same network. We need some type of reverse proxy if possible that can help to render it. Could you guys suggest me some approach that I can make it possible So that we can easily enable this feature for us. Thank you!! # Answer The error you're encountering is due to a mixed content issue where the Flyte Deck is being served over HTTP while your Flyte Console is served over HTTPS. This is blocked by modern browsers for security reasons. Since you cannot expose Minio publicly, you can use a reverse proxy to serve Minio content over HTTPS. Solution: Use a Reverse Proxy You can set up a reverse proxy to serve Minio content over HTTPS. Here’s a step-by-step approach: 1. Set Up a Reverse Proxy: Use a reverse proxy like Nginx or Traefik to forward requests from an HTTPS endpoint to your Minio service. 2. Configure FlyteAdmin: Update FlyteAdmin to use the reverse proxy URL for Minio. Example with Nginx 1. Install Nginx: Ensure Nginx is installed on your server. 2. Configure Nginx: Create an Nginx configuration file to proxy requests to Minio.
Copy code
server {
    listen 443 ssl;
    server_name <your-ingress-domain-name>;

    ssl_certificate /path/to/your/cert.crt;
    ssl_certificate_key /path/to/your/cert.key;

    location /minio/ {
        proxy_pass http://minio.flyte.svc.cluster.local:9200/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
3. Update FlyteAdmin Configuration: Modify the FlyteAdmin configuration to use the reverse proxy URL.
Copy code
storage:
  signedUrl:
    stowConfigOverride:
      endpoint: https://<your-ingress-domain-name>/minio
>>4. Restart Nginx: Apply the configuration and restart Nginx.
Copy code
sudo systemctl restart nginx
Example with Traefik 1. Install Traefik: Ensure Traefik is installed and running. 2. Configure Traefik: Add a new
IngressRoute
for Minio.
Copy code
apiVersion: <http://traefik.containo.us/v1alpha1|traefik.containo.us/v1alpha1>
kind: IngressRoute
metadata:
  name: minio-ingress
  namespace: flyte
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`<your-ingress-domain-name>`) && PathPrefix(`/minio`)
      kind: Rule
      services:
        - name: minio
          port: 9200
          scheme: http
3. Update FlyteAdmin Configuration: Modify the FlyteAdmin configuration to use the Traefik URL.
Copy code
storage:
  signedUrl:
    stowConfigOverride:
      endpoint: https://<your-ingress-domain-name>/minio
Verify Configuration 1. Check Access: Ensure you can access Minio content via the reverse proxy URL. 2. Test Flyte Deck: Navigate to the Flyte Console and verify that the Flyte Deck is accessible without mixed content errors. Would you like more detailed steps or assistance with a specific part of this setup? Sources: - Flyte Deployment Discussion Slack Link https://flyte-org.slack.com/archives/CP2HDHKE1/p1721805882.944699 👍 0 button 👎 0 button 💡 Hint: Mention @runllm in the thread for followups.