- MySQL Server is already deployed.
kubectl get pods -n kamailioOUTPUT
NAME READY STATUS RESTARTS AGE
mysql-5448dbc87f-5gm97 1/1 Running 0 9m2s
- Docker Image for kamailio already pushed to Docker hun
vim kamailio-namespace.yamlcopy and paste the following content in the file
# kamailio-namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
name: kamailio
vim kamailio-configmap.yamlcopy and paste the following content in the file
# kamailio-configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: kamailio-config
namespace: kamailio
data:
kamailio.cfg: |
# Your Kamailio configuration file content here
# Make sure to configure MySQL connection to point to the service:
# mysql://kamailio:[email protected]:3306/kamailio
vim kamailio-deployment.yamlcopy and paste the following content in the file
# kamailio-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: kamailio
namespace: kamailio
spec:
replicas: 1
selector:
matchLabels:
app: kamailio
template:
metadata:
labels:
app: kamailio
spec:
containers:
- name: kamailio
#image: kamailio/kamailio-ci:latest
image: hrhashmi/kamailio-for-kube:0.0.5
ports:
- containerPort: 5060
name: sip-udp
protocol: UDP
- containerPort: 5060
name: sip-tcp
protocol: TCP
- containerPort: 5061
name: sip-tls
protocol: TCP
#env:
#- name: DB_URL
# value: "mysql://root:[email protected]:3306/kamailio"
#volumeMounts:
#- name: kamailio-config
# mountPath: /etc/kamailio
volumes:
- name: kamailio-config
configMap:
name: kamailio-config
vim kamailio-service.yaml
copy and paste the following content in the file
apiVersion: v1
kind: Service
metadata:
name: kamailio
namespace: kamailio
spec:
type: NodePort
selector:
app: kamailio
ports:
- name: sip-udp
port: 5060
protocol: UDP
targetPort: 5060
nodePort: 30506
- name: sip-tcp
port: 5060
protocol: TCP
targetPort: 5060
nodePort: 30506
- name: sip-tls
port: 5061
protocol: TCP
targetPort: 5061
nodePort: 30501
kubectl apply -f kamailio-namespace.yaml -f kamailio-configmap.yaml -f kamailio-deployment.yaml -f kamailio-service.yamlkubectl get pods -n kamailio -o wideOUTPUT
kamailio-84d7f54568-62j82 1/1 Running 0 2m40s 172.16.32.65 nodekube1 <none> <none>
mysql-5448dbc87f-5gm97 1/1 Running 0 24m 172.16.35.65 nodekube2 <none> <none>
kubectl -n kamailio exec -it <kamailio_pod_name> -- ping mysql.kamailio.svc.cluster.localkubectl -n kamailio exec -it <kamailio_pod_name> -- /bin/bash
# Eidt kamctlrc file
kamdbctl create
exit
###