Sctp support for version 1.12.1

#1

Hi

I have a use space sctp application running in a container (pod) which uses raw socket. Now i want to expose my userspace sctp application to external networks using Nodeport. I am using latest kubernetes 1.12.1 with calico version 3.2 and docker version 18.06. But the packets are not getting forwarded from host to the container. Packets are getting dropped at host only. The below is my config.

apiVersion: v1
kind: Service
metadata:
name: sctpenabledapp
labels:
service: sctpenabledapp
spec:
type: NodePort
ports:

  • port: 31111
    nodePort: 31111
    selector:
    app: sctpenabledapp

apiVersion: apps/v1
kind: Deployment
metadata:
name: sctpenabledapp
spec:
selector:
matchLabels:
app: sctpenabledapp
strategy:
type: Recreate
template:
metadata:
labels:
app: sctpenabledapp
spec:
containers:
- image: myrepo/sctpenabledappv2
imagePullPolicy: Always
name: sctpenabledapp
ports:
- containerPort: 31111
name: sctpenabledapp

I also enabled sctp support in the cluster and specified protocol as sctp in configuration as shown below,still i have the same issue.

apiVersion: v1
kind: Service
metadata:
name: sctpenabledapp
labels:
service: sctpenabledapp
spec:
type: NodePort
ports:

  • protocol: SCTP
    port: 31111
    nodePort: 31111
    selector:
    app: sctpenabledapp

apiVersion: apps/v1
kind: Deployment
metadata:
name: sctpenabledapp
spec:
selector:
matchLabels:
app: sctpenabledapp
strategy:
type: Recreate
template:
metadata:
labels:
app: sctpenabledapp
spec:
containers:
- image: myrepo/sctpenabledappv2
imagePullPolicy: Always
name: sctpenabledapp
ports:
- containerPort: 31111
protocol: SCTP
name: sctpenabledapp

My cluster is working fine for any other TCP based applications,so can you please give us some hints on how to make sctp working and debugging steps

Thanks

0 Likes

#2

hi,

Did you get any solution? Even for me sctp traffic is getting dropped at host itself?
How did you enable sctp support in the cluster?

Regards,
Himani

0 Likes

#3

Hi

I am going to work on the issue this week, I will let you know you know my findings in a week. Mean while you can enable SCTP while deploying cluster. I am not sure is there any way to enable it after installation

apiVersion: kubeadm.k8s.io/v1alpha3
kubernetesVersion: v1.12.1
kind: ClusterConfiguration
apiServerExtraArgs:
feature-gates: SCTPSupport=true
apiserver-advertise-address: ipaddress
pod-network-cidr: 192.168.0.0/16

You can initialize the cluster using the following command
kubeadm init --config config.yaml

Thanks
venkat

0 Likes

#4

I get error while doing init as W0102 08:24:50.183223 29567 strict.go:54] error unmarshaling configuration schema.GroupVersionKind{Group:“kubeadm.k8s.io”, Version:“v1alpha3”, Kind:“ClusterConfiguration”}: error unmarshaling JSON: while decoding JSON: json: unknown field “apiserver-advertise-address”

0 Likes

#5

Hi,

Any update on the traffic issue?

Regards,
Himani

0 Likes

#6

Did anyone get this working?

0 Likes

#7

are there any findings to share, on what fixes the host rejecting the SCTP packets ?

In our case too, the SCTP packets are rejected by Node. But same works with flannel ? any clues if Calico playing an spoiler here!

0 Likes