Добавление сервера для Voice Gateway в кластер Kubernetes
В данной инструкции найдете шаги по добавлению сервера для Voice Gateway в кластер Kubernetes.
Все действия выполняются на ВМ1, если не указано иное.
Для добавления сервера под Voice Gateway выполните следующие шаги:
На ВМ3 клонируйте репозиторий:
Замените
{TAG_NAME}
любым доступным тегом (для получения полного списка тегов используйтеgit tag
):
git clone https://github.com/aipix-dev/aipix-deploy.git
cd ./aipix-deploy
git checkout {TAG_NAME}
cd kubernetes/k8s-onprem/
Установите базовые компоненты Kubernetes:
./install_kube_base.sh
На ВМ1 получите регистрационный токен и URL:
kubeadm token create --print-join-command
###Пример токена:
kubeadm join 192.168.205.164:6443 --token 3yeqrm.abnp3yof8vivcbge --discovery-token-ca-cert-hash sha256:b58cfd679a3bb49f444dfe4869fad5e19f4fba87f1d6ae5f20da06c60f51684e
Скопируйте токен и примените его на ВМ3, используя
sudo
:
###Пример:
sudo kubeadm join 192.168.205.164:6443 --token 3yeqrm.abnp3yof8vivcbge --discovery-token-ca-cert-hash sha256:b58cfd679a3bb49f444dfe4869fad5e19f4fba87f1d6ae5f20da06c60f51684e
Проверьте на ВМ1, что сервер добавлен и находится в статусе
Ready
:
kubectl get nodes
###Пример ответа:
NAME STATUS ROLES AGE VERSION
k8s-single Ready control-plane 9d v1.28.2
k8s-single-analytics Ready <none> 3m28s v1.28.2
k8s-single-vgw Ready <none> 1m14s v1.28.2
Добавьте
label
иtaint
на данный сервер, чтобы он использовался только для Voice Gateway. Выполните следующие команды, заменивk8s-single-vgw
на имя вашего сервера:
##Пример:
kubectl taint nodes k8s-single-vgw vgw=true:NoSchedule
kubectl label nodes k8s-single-vgw vgw=true
Установка дополнительного компонента для узла Voice Gateway
Узел Voice Gateway требует прокси RTP для маршрутизации трафика RTP из Интернета во внутренние сети домофонов.
На ВМ3, установить определенный модуль ядра для улучшения обработки RTP:
sudo add-apt-repository -y ppa:davidlublink/rtpengine-stable
sudo apt update
sudo apt-get install -y ngcp-rtpengine
Настройте параметры
RTPENGINE
:CODEvim /etc/rtpengine/rtpengine.conf
Настройте внутренние и внешнее интерфейсы (смотрите архитектурную схему):
CODEinterface = internal/<INT_IP>;external/<EXT_IP>!<NAT_EXT_IP>
Установить диапазон портов RTP:
CODEport-min = 20000 port-max = 25000
Перезагрузите сервис:
systemctl restart rtpengine