I am trying to convert from ClusterIp to NodePort. But When I call via curl http://176.55.116.xxx:30100 . It creates the below error. How can I convert below from clusterIp to Nodeport version?
below configuration is not working...
(1) ClusterIp version (deployment_service.yml) WORKING
<!-- begin snippet: js hide: false console: true babel: false --><!-- language: lang-js -->apiVersion: apps/v1
kind: DaemonSet
metadata:
namespace: coturn
name: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
# replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
template:
metadata:
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
hostNetwork: true
# securityContext:
# runAsUser: 1000
# runAsGroup: 1000
containers:
- name: coturn
image: coturn/coturn
imagePullPolicy: Always
ports:
# - name: turn-udp
# containerPort: 3000
# protocol: UDP
- name: turn-port1
containerPort: 3478
hostPort: 3478
protocol: UDP
- name: turn-port2
containerPort: 3478
hostPort: 3478
protocol: TCP
# securityContext:
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# allowPrivilegeEscalation: false
args:
# - --stun-only
- -v
---
apiVersion: v1
kind: Service
metadata:
name: coturn
namespace: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
type: ClusterIP
ports:
# - port: 3000
# targetPort: 3000
# protocol: UDP
# name: turn-udp
- port: 3478
targetPort: 3478
protocol: UDP
name: turn-port1
- port: 3478
targetPort: 3478
protocol: TCP
name: turn-port2
# - port: 3478
# targetPort: 3478
# protocol: TCP
# name: turn-port3
# - port: 3479
# targetPort: 3479
# protocol: TCP
# name: turn-port4
selector:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1<!-- end snippet -->(2) NodePort version (deployment_service.yml) : (NOT WORKInG)
<!-- begin snippet: js hide: false console: true babel: false --><!-- language: lang-js -->apiVersion: apps/v1
kind: DaemonSet
metadata:
namespace: coturn
name: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
# replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
template:
metadata:
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
hostNetwork: true
# securityContext:
# runAsUser: 1000
# runAsGroup: 1000
containers:
- name: coturn
image: coturn/coturn
imagePullPolicy: Always
ports:
# - name: turn-udp
# containerPort: 3000
# protocol: UDP
- name: turn-port1
containerPort: 3478
hostPort: 3478
protocol: UDP
- name: turn-port2
containerPort: 3478
hostPort: 3478
protocol: TCP
# securityContext:
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# allowPrivilegeEscalation: false
args:
# - --stun-only
- -v
---
apiVersion: v1
kind: Service
metadata:
name: coturn
namespace: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
type: NodePort
ports:
# - port: 3000
# targetPort: 3000
# protocol: UDP
# name: turn-udp
- port: 3478
targetPort: 3478
nodePort: 30100
protocol: UDP
name: turn-port1
- port: 3478
targetPort: 3478
nodePort: 30100
protocol: TCP
name: turn-port2
selector:
app: coturn
# - port: 3478
# targetPort: 3478
# protocol: TCP
# name: turn-port3
# - port: 3479
# targetPort: 3479
# protocol: TCP
# name: turn-port4
status:
loadBalancer: {}
<!-- end snippet -->Error:
yusuf@DESKTOP-QK5VI8R:~/turnserver$ kubectl apply -f deploy.yml
daemonset.apps/coturn created
error: error parsing deploy.yml: error converting YAML to JSON: yaml: line 27: did not find expected '-' indicatorYou have an error in the yaml syntax, the selector is under spec.ports, which cannot work.
This is the corrected file (to check problems, use YAML validators, there are plenty online which you can toy with):
apiVersion: apps/v1
kind: DaemonSet
metadata:
namespace: coturn
name: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
# replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
template:
metadata:
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
hostNetwork: true
# securityContext:
# runAsUser: 1000
# runAsGroup: 1000
containers:
- name: coturn
image: coturn/coturn
imagePullPolicy: Always
ports:
# - name: turn-udp
# containerPort: 3000
# protocol: UDP
- name: turn-port1
containerPort: 3478
hostPort: 3478
protocol: UDP
- name: turn-port2
containerPort: 3478
hostPort: 3478
protocol: TCP
# securityContext:
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# allowPrivilegeEscalation: false
args:
# - --stun-only
- -v
---
apiVersion: v1
kind: Service
metadata:
name: coturn
namespace: coturn
labels:
app.kubernetes.io/name: coturn
app.kubernetes.io/instance: coturn
app.kubernetes.io/version: 0.0.1
spec:
type: NodePort
ports:
# - port: 3000
# targetPort: 3000
# protocol: UDP
# name: turn-udp
- port: 3478
targetPort: 3478
nodePort: 30100
protocol: UDP
name: turn-port1
- port: 3478
targetPort: 3478
nodePort: 30100
protocol: TCP
name: turn-port2
# - port: 3478
# targetPort: 3478
# protocol: TCP
# name: turn-port3
# - port: 3479
# targetPort: 3479
# protocol: TCP
# name: turn-port4
selector:
app: coturn