Skip to content

AiMLops Project 3.0 System improvements

Linux88888 edited this page Apr 25, 2025 · 8 revisions

HTTPS Configuration for Platform Services

Last Updated: 2025-04-25

Overview

This document provides an introduction to configuring HTTPS for our ML platform services. We'll transform the following services from HTTP to HTTPS:

  • MinIO
  • MLflow
  • Grafana
  • Prometheus
  • MLflow Pipeline UI

Key Components

1. Certificate Manager

Certificate Manager (cert-manager) is responsible for obtaining and renewing TLS certificates. We'll use it to secure our services with HTTPS.

# Install cert-manager
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.0/cert-manager.yaml

2. ClusterIssuer

ClusterIssuer tells cert-manager how to request certificates. We'll set up a ClusterIssuer to obtain certificates from Let's Encrypt.

3. Environment ConfigMap

We'll create a ConfigMap to store common environment variables like domain names and email addresses used across services.

4. Service Configuration Components

For each service (Minio, MLflow, Grafana, etc.), we'll need to create:

  1. Certificate Request - Requests a certificate for the service's domain
  2. Ingress Configuration - Routes traffic to the service and enables HTTPS

Implementation Steps

  1. Install cert-manager
  2. Create a ClusterIssuer
  3. Create environment ConfigMap
  4. For each service:
    • Create certificate request
    • Create service ingress configuration
  5. Apply configurations
  6. Verify HTTPS connectivity

Example: MLflow HTTPS Configuration

As an example, to enable HTTPS for MLflow, we'll need:

  1. A certificate request:
# Certificate request for MLflow
# (simplified example)
  1. An ingress configuration:
# Ingress for MLflow with TLS enabled
# (simplified example)

Verification

After applying configurations, verify that services are accessible via HTTPS:

# Check certificate status
kubectl get certificates --all-namespaces

# Test connection
curl -k https://mlflow.example.com

What's Next

Detailed configuration guides for each service are available in separate wiki pages:

Note: This is an introduction page. See individual service pages for detailed configuration instructions.

Clone this wiki locally