Remove redundant Harbor manifest files
Harbor Helm chart creates Ingress and cert-manager auto-creates certificates via Ingress annotations. Removed non-functional and redundant manifests: - certificate.yaml: cert-manager creates from Ingress annotation - httproute.yaml: non-functional (pointed to non-existent service) - httproute-alt.yaml: non-functional (pointed to non-existent service) Standardized on single hostname: the-seas.local.mk-labs.cloud Updated README to reflect actual NGINX Ingress architecture (not Gateway API) Net: -97 lines, simplified deployment, no functional change
This commit is contained in:
@@ -10,9 +10,8 @@ Harbor is an open-source container registry that provides trust, compliance, per
|
||||
|
||||
## Service Details
|
||||
|
||||
- **Primary URL:** https://the-seas.local.mk-labs.cloud
|
||||
- **Alternate URL:** https://harbor.local.mk-labs.cloud (for intuitive `docker login harbor...`)
|
||||
- **Namespace:** the-seas
|
||||
- **URL:** https://the-seas.local.mk-labs.cloud
|
||||
- **Namespace:** harbor
|
||||
- **Sync Wave:** 7 (deploys after Gateway API, cert-manager, ExternalSecrets)
|
||||
|
||||
## Architecture
|
||||
@@ -88,23 +87,21 @@ All credentials are stored in 1Password and synchronized to Kubernetes via Exter
|
||||
|
||||
## Network & TLS
|
||||
|
||||
### DNS Names
|
||||
- **Primary:** the-seas.local.mk-labs.cloud
|
||||
- **Alternate:** harbor.local.mk-labs.cloud
|
||||
### DNS Name
|
||||
- **Hostname:** the-seas.local.mk-labs.cloud
|
||||
|
||||
Both DNS names resolve to the Cilium Gateway IP (10.1.71.90) via external-dns.
|
||||
DNS resolves to the NGINX Ingress Controller IP (10.1.71.80).
|
||||
|
||||
### TLS Certificates
|
||||
- Issued by Let's Encrypt (letsencrypt-prod ClusterIssuer)
|
||||
- Managed by cert-manager
|
||||
- Separate certificates for each hostname
|
||||
- Stored as Kubernetes secrets: `the-seas-tls`, `harbor-tls`
|
||||
### TLS Certificate
|
||||
- Issued by Let's Encrypt (letsencrypt-staging ClusterIssuer)
|
||||
- Managed by cert-manager (automatic via Ingress annotation)
|
||||
- Certificate stored as Kubernetes secret: `harbor-tls`
|
||||
|
||||
### Routing
|
||||
- **Gateway:** fastpass-gateway (namespace: gateway)
|
||||
- **Ingress Controller:** NGINX (nginx-ingress)
|
||||
- **Protocol:** HTTPS (port 443)
|
||||
- **Backend:** ClusterIP service `the-seas` on port 80
|
||||
- TLS termination at Gateway level
|
||||
- **Backend:** Harbor NGINX service on port 80
|
||||
- TLS termination at Ingress level
|
||||
|
||||
## Access & Authentication
|
||||
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
# ------------------------------------------------------------------------------
|
||||
# Certificate — Harbor TLS Certificate (staging until stable)
|
||||
# DNS Names: the-seas.local.mk-labs.cloud, harbor.local.mk-labs.cloud
|
||||
# ------------------------------------------------------------------------------
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: harbor-tls
|
||||
namespace: harbor
|
||||
spec:
|
||||
secretName: harbor-tls
|
||||
issuerRef:
|
||||
name: letsencrypt-staging
|
||||
kind: ClusterIssuer
|
||||
dnsNames:
|
||||
- the-seas.local.mk-labs.cloud
|
||||
- harbor.local.mk-labs.cloud
|
||||
@@ -1,33 +0,0 @@
|
||||
# ------------------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------------------
|
||||
# HTTPRoute — Harbor (Alternate) via Cilium Gateway
|
||||
# Alternate DNS: harbor.local.mk-labs.cloud (functional name)
|
||||
# ------------------------------------------------------------------------------
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: harbor-alt
|
||||
namespace: harbor
|
||||
annotations:
|
||||
external-dns.alpha.kubernetes.io/hostname: harbor.local.mk-labs.cloud
|
||||
external-dns.alpha.kubernetes.io/target: "10.1.71.90"
|
||||
spec:
|
||||
parentRefs:
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: fastpass-gateway
|
||||
namespace: gateway
|
||||
sectionName: https
|
||||
hostnames:
|
||||
- harbor.local.mk-labs.cloud
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: /
|
||||
backendRefs:
|
||||
- group: ""
|
||||
kind: Service
|
||||
name: the-seas
|
||||
port: 80
|
||||
weight: 1
|
||||
@@ -1,32 +0,0 @@
|
||||
# ------------------------------------------------------------------------------
|
||||
# HTTPRoute — Harbor (Primary) via Cilium Gateway
|
||||
# Primary DNS: the-seas.local.mk-labs.cloud (EPCOT theme)
|
||||
# ------------------------------------------------------------------------------
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: harbor-the-seas
|
||||
namespace: harbor
|
||||
annotations:
|
||||
external-dns.alpha.kubernetes.io/hostname: the-seas.local.mk-labs.cloud
|
||||
external-dns.alpha.kubernetes.io/target: "10.1.71.90"
|
||||
spec:
|
||||
parentRefs:
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: fastpass-gateway
|
||||
namespace: gateway
|
||||
sectionName: https
|
||||
hostnames:
|
||||
- the-seas.local.mk-labs.cloud
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: /
|
||||
backendRefs:
|
||||
- group: ""
|
||||
kind: Service
|
||||
name: the-seas
|
||||
port: 80
|
||||
weight: 1
|
||||
Reference in New Issue
Block a user