[SR-Users] Kamailio IMS as kubernetes pods

Pavithra Mohanraja pavimohan3004 at gmail.com
Wed Sep 2 17:09:21 CEST 2020


Hi,
Thanks @Abdirahman A. Osman <abdirahman.osm at gmail.com>

I have tried having custom dns server by changing the core-dns config file.

sip.example.com:53 {
            errors
            cache 30
            forward . 10.152.183.91
    }

I could able to resolve the domain names properly. But now the issue is
communication between icscf and hss is getting blocked if i use the service
IP for communication and i am receiving 504 server timeout error from icscf
when it uses the service IP.

Could anyone help me on this suggesting how the service IP can be used for
communicating between pcscf, icscf, scscf and hss pods so that call
establishment must be successful.

Thanks,
Pavithra

On Sat, Aug 29, 2020 at 8:33 AM Abdirahman A. Osman <
abdirahman.osm at gmail.com> wrote:

> Thanks David, glad it worked.
>
> @ Pavithra,
>
> I am not familiar how the bind9, DNS, and SRV records works with Kamailio.
>
> May be you can set the Kubernetes cluster domain to sip.example.com and
> then for the Pcscf pod the DNS record will be *pcscf-0.pcscf-service.namespace.sip.example.com
> <http://pcscf-0.pcscf-service.namespace.sip.example.com>*
>
> You configure the local domain in the kubelet with the flag
> --cluster-domain=<default-local-domain>.
>
>
> Abdirahman A. Osman
>
>
>
> On Fri, 28 Aug 2020 at 15:03, David Villasmil <
> david.villasmil.work at gmail.com> wrote:
>
>> Abdirahman,
>>
>> Thanks for the pointer, that worked like a charm!
>>
>> David
>>
>> On Thu, 27 Aug 2020 at 20:11, Pavithra Mohanraja <pavimohan3004 at gmail.com>
>> wrote:
>>
>>> Hi Abdirahman,
>>>
>>> One small doubt . In kamailio IMS server, we have dns configurations
>>> using bind9 with SRV records pointing a port for every ip address .
>>>
>>> My domain name is sip.example.com
>>>
>>> Pcscf.sip.example.com:4060
>>> Icscf.sip.example.com:4070
>>> scscf.sip.example.com:4080
>>> hss.sip.example.com
>>>
>>>
>>> So this is how the dns server will be in my case.
>>>
>>> The same domain names are configured as alias in my respective  cscf
>>> config files.
>>>
>>> When you talk about nameserver . How this has to be configured using
>>> coredns/kubedns setting clusterIP : None
>>>
>>> How this can be done from your point of view using coredns.
>>>
>>> Kindly help me with this
>>>
>>> Thanks,
>>> Pavithra
>>>
>>> On Thu, Aug 27, 2020, 11:55 PM David Villasmil <
>>> david.villasmil.work at gmail.com> wrote:
>>>
>>>> Interesting! I’ll be testing that very soon! Many thanks!!
>>>>
>>>> On Thu, 27 Aug 2020 at 14:53, Abdirahman A. Osman <
>>>> abdirahman.osm at gmail.com> wrote:
>>>>
>>>>> Hi David,
>>>>>
>>>>> Yes that is right, so when you set to ClusterIP:none, it turns the
>>>>> services into a headless services. and the DNS will resolve to a single
>>>>> POD, instead of a group of PODs, and you can reach every POD through the
>>>>> DNS. IPs may change but the DNS will stay fixed when you use Statefullset,
>>>>> as you need a fixed DNS name for the pod. If you  use Deployment you get a
>>>>> randomly generated name, which is not what you want.
>>>>>
>>>>>
>>>>> Abdirahman
>>>>>
>>>>>
>>>>>
>>>>> On Thu, 27 Aug 2020 at 08:06, David Villasmil <
>>>>> david.villasmil.work at gmail.com> wrote:
>>>>>
>>>>>> Hello Abdirahman,
>>>>>>
>>>>>> Thanks for replying.
>>>>>>
>>>>>> Do you mean if I create a service for the label selector of what’s
>>>>>> running in the pod, but ser ClusterIP: None, when another pod tries to
>>>>>> resolve that service, it will get the actual IP of the running POD?
>>>>>>
>>>>>>
>>>>>> On Wed, 26 Aug 2020 at 18:02, Abdirahman A. Osman <
>>>>>> abdirahman.osm at gmail.com> wrote:
>>>>>>
>>>>>>> Hi Pavithra,
>>>>>>>
>>>>>>> Since POD IPs change, you have to rely on DNS records. To have a
>>>>>>> fixed DNS name like
>>>>>>>
>>>>>>> kamailio.kamalio-service.namespace.svc.cluster.local
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> for a pod you will have to use StatefullSet, so the pod DNS name
>>>>>>> doesn't change. Also you have to use Services and set it to ClusterIP:
>>>>>>> none, it will turn your pods to headless services and no load balancing is
>>>>>>> involved. and from my understanding you will be able to reach each POD
>>>>>>> directly through the DNS name.
>>>>>>> https://kubernetes.io/docs/concepts/services-networking/service/
>>>>>>>
>>>>>>> and don't forget to set  your /etc/resolv.conf with the kubedns IP
>>>>>>> address.
>>>>>>>
>>>>>>> Abdirahman
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, 26 Aug 2020 at 12:45, Pavithra Mohanraja <
>>>>>>> pavimohan3004 at gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi Abdirahman,
>>>>>>>>
>>>>>>>> Do you mean , if I set clusterIP as None, then kubedns server will
>>>>>>>> be pointing to pod ip so that kubedns/coredns will use pod ip for pod
>>>>>>>> communication instead of service IP.
>>>>>>>>
>>>>>>>>
>>>>>>>> Is my understanding correct? From your explanation.
>>>>>>>>
>>>>>>>> If this is the case, pod ip will be changing whenever I launch the
>>>>>>>> pods . How that can be resolved.
>>>>>>>>
>>>>>>>> Could you kindly helo me with this?
>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Pavithra
>>>>>>>>
>>>>>>>> On Wed, Aug 26, 2020, 9:26 PM Abdirahman A. Osman <
>>>>>>>> abdirahman.osm at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> David,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Assuming those are pod ips. Using services doesn’t work
>>>>>>>>>>
>>>>>>>>>> since the dns name will resolve to a k8s service ip and no the
>>>>>>>>>> actual
>>>>>>>>>>
>>>>>>>>>> pod running the service.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> If you set   *clusterIP: None* in the services, you will get POD
>>>>>>>>> IP.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Abdirahman
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, 26 Aug 2020 at 10:48, Pavithra Mohanraja <
>>>>>>>>> pavimohan3004 at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>> Thanks for the answers.
>>>>>>>>>> @David has got my question.
>>>>>>>>>>
>>>>>>>>>> I have a seperate dns server running in my pcscf pod . So in my
>>>>>>>>>> /etc/resolv.conf file , I would be configuring
>>>>>>>>>> nameserver <pcscf pod ip>
>>>>>>>>>> in all other cscf pods as well for communication.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> My question here is how to change the dns server pointing to
>>>>>>>>>> cluster ip so that my domain name for IMS will be pointing to coredns
>>>>>>>>>> itself. It will restrict me from using pod IP since it changes everytime.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> @David, can you please tell me the last two lines briefly. I did
>>>>>>>>>> not get it.how you configured . You mean to say still you are using pod Ip.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, Aug 26, 2020, 8:02 PM David Villasmil <
>>>>>>>>>> david.villasmil.work at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> I’ve been trying to figure this out as well.
>>>>>>>>>>> I haven’t yet found a way of publishing to kube-dns the pod IP
>>>>>>>>>>> of the running service.
>>>>>>>>>>>
>>>>>>>>>>> I.e.:
>>>>>>>>>>> kamailio.whatever.local on ip 10.0.0.1
>>>>>>>>>>> Rtpengine.whatever.local on ip 10.0.0.2
>>>>>>>>>>> Appserver.whatever.local on 10.0.0.3
>>>>>>>>>>>
>>>>>>>>>>> Assuming those are pod ips. Using services doesn’t work since
>>>>>>>>>>> the dns name will resolve to a k8s service ip and no the actual pod running
>>>>>>>>>>> the service.
>>>>>>>>>>>
>>>>>>>>>>> Assigning IPs hardcoded doesn’t work either since it might
>>>>>>>>>>> change if the docker changes pod. I can have multiple modes on which a
>>>>>>>>>>> service can run, but only one service (kamailio, rtpengine, appserver, etc)
>>>>>>>>>>> will run on a given pod.
>>>>>>>>>>>
>>>>>>>>>>> On Wed, 26 Aug 2020 at 15:18, Abdirahman A. Osman <
>>>>>>>>>>> abdirahman.osm at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi
>>>>>>>>>>>>
>>>>>>>>>>>> Pavithra
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> You can use the kubedns/CoreDNS of the kubernetes cluster to
>>>>>>>>>>>> resolve Internal DNS records of the pods.To assign DNS records for each POD
>>>>>>>>>>>> you have to deploy a service and set the ClusterIP: none. and the dns
>>>>>>>>>>>> record will be something like
>>>>>>>>>>>> kamailio.kamalio-service.platform.svc.cluster.local
>>>>>>>>>>>> which is the podname.servicename.namespace.svc.cluster.local
>>>>>>>>>>>>
>>>>>>>>>>>> In the resolve.conf you will put the kubeDNS/CoreDNS IP as the
>>>>>>>>>>>> nameserver.  You can set this in the kubernetes manifest file
>>>>>>>>>>>>
>>>>>>>>>>>>       dnsPolicy: "None"
>>>>>>>>>>>>       dnsConfig:
>>>>>>>>>>>>         nameservers:
>>>>>>>>>>>>           - 10.34.0.1 (
>>>>>>>>>>>>
>>>>>>>>>>>> kubeDNS/CoreDNS )
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Abdirahman
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Tue, 25 Aug 2020 at 15:34, Sergey Safarov <
>>>>>>>>>>>> s.safarov at gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I am not k8s developer.
>>>>>>>>>>>>> So cannot provide detailed instructions. Just my point of view.
>>>>>>>>>>>>>
>>>>>>>>>>>>> You can look
>>>>>>>>>>>>> https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
>>>>>>>>>>>>>
>>>>>>>>>>>>> https://www.magalix.com/blog/creating-custom-kubernetes-operators
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Tue, Aug 25, 2020 at 7:41 PM Pavithra Mohanraja <
>>>>>>>>>>>>> pavimohan3004 at gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> It would be helpful if you could elaborate what has to be
>>>>>>>>>>>>>> done for kubernetes pods when you mention sip ingress
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Pavithra
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Tue, Aug 25, 2020, 9:32 PM Sergey Safarov <
>>>>>>>>>>>>>> s.safarov at gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Lot of issues with static IP in Kubernetes.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Looks as need deploy "sip ingress" like "HTTP/HTTPS ingress"
>>>>>>>>>>>>>>> and then route calls to pods.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Tue, Aug 25, 2020 at 4:40 PM Pavithra Mohanraja <
>>>>>>>>>>>>>>> pavimohan3004 at gmail.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I am configuring kamailio IMS as kubernetes pods .
>>>>>>>>>>>>>>>> so each component will be configured as separate pod .
>>>>>>>>>>>>>>>> In order to establish a connection between pods , I am
>>>>>>>>>>>>>>>> configuring bind9 dns server in pcscf pod itself. Communication is
>>>>>>>>>>>>>>>> happening via Pod IP address.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Is there any possibility to have the communication using
>>>>>>>>>>>>>>>> cluster IP . If anybody is aware of kubernetes, Please help me in this
>>>>>>>>>>>>>>>> regard.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I have my /etc/resolv.conf file in pods with
>>>>>>>>>>>>>>>> nameserver <clusterIP>
>>>>>>>>>>>>>>>> search <cluster-dns-domain-name>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Please help.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>>>> Pavithra
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>
>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>
>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>
>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>> Regards,
>>>>>>>>>>>
>>>>>>>>>>> David Villasmil
>>>>>>>>>>> email: david.villasmil.work at gmail.com
>>>>>>>>>>> phone: +34669448337
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>> Regards,
>>>>>>
>>>>>> David Villasmil
>>>>>> email: david.villasmil.work at gmail.com
>>>>>> phone: +34669448337
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>> Regards,
>>>>
>>>> David Villasmil
>>>> email: david.villasmil.work at gmail.com
>>>> phone: +34669448337
>>>>
>>>>
>>>>
>>>
>>> --
>> Regards,
>>
>> David Villasmil
>> email: david.villasmil.work at gmail.com
>> phone: +34669448337
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20200902/8db32f84/attachment.htm>


More information about the sr-users mailing list