clusterplex icon indicating copy to clipboard operation
clusterplex copied to clipboard

Add config to enable http on pms service

Open AngellusMortis opened this issue 6 months ago • 0 comments

Adds a config option to values.yaml to let you enable the HTTP/HTTPS ports on the main PMS service. This is useful so you can just expose the PMS service as a LoadBalancer and let it service all external HTTPS traffic, which is really useful if you have HTTPS and custom domain configured inside of Plex so everything is served from a single IP (port 80, 443 and 32400).

pms:
  serviceConfig:
    # Configure the type of service
    type: LoadBalancer

    # -- Specify the externalTrafficPolicy for the service. Options: Cluster, Local
    # [[ref](https://kubernetes.io/docs/tutorials/services/source-ip/)]
    externalTrafficPolicy: Local

    # -- Enable ports 80/443 on service
    enableHttpPorts: true
$ kubectl -n media describe service plex-pms
Name:                     plex-pms
Namespace:                media
...
Selector:                 app.kubernetes.io/instance=plex,app.kubernetes.io/name=pms
Type:                     LoadBalancer
IP Family Policy:         SingleStack
IP Families:              IPv4
IP:                       10.101.77.235
IPs:                      10.101.77.235
LoadBalancer Ingress:     192.168.1.100
Port:                     plex  32400/TCP
TargetPort:               plex/TCP
NodePort:                 plex  32094/TCP
Endpoints:                10.244.4.52:32400
Port:                     plex-http  80/TCP
TargetPort:               32400/TCP
NodePort:                 plex-http  32528/TCP
Endpoints:                10.244.4.52:32400
Port:                     plex-https  443/TCP
TargetPort:               32400/TCP
NodePort:                 plex-https  32058/TCP
Endpoints:                10.244.4.52:32400
Port:                     relay  32499/TCP
TargetPort:               relay/TCP
NodePort:                 relay  31481/TCP
Endpoints:                10.244.4.52:32499
Session Affinity:         None
External Traffic Policy:  Local
HealthCheck NodePort:     32173

Pairs well with my other PR: https://github.com/pabloromeo/clusterplex/pull/330

AngellusMortis avatar Aug 17 '24 15:08 AngellusMortis