Я тестирую стек kubernetes minikube / infxdb / grafana под macos 10.15.3. Я работаю в командной строке.
Системная среда:
- MacOS 10.15.3 / bin / bash (darwin19)
Minikube 1.7.2, скачал через
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64
Я запускаю minikube из сценария оболочки через
minikube start --extra-config=apiserver.service-node-port-range=3000-61616
Minikube отвечает
Creating hyperkit VM (CPUs=2, Memory=2000MB, Disk=20000MB) ...
???? Preparing Kubernetes v1.17.2 on Docker 19.03.5 ...
▪ apiserver.service-node-port-range=3000-61616
???? Launching Kubernetes ...
???? Enabling addons: default-storageclass, storage-provisioner
⌛ Waiting for cluster to come online ...
???? Done! kubectl is now configured to use "minikube"
Итак, я предполагаю, что сервисные порты 3000-61616 ДОСТУПНЫ в minikube.
Несколько строк сценария оболочки в будущем я создаю службу Grafana, применяя код yaml:
apiVersion: v1
kind: Service
metadata:
name: grafana
namespace: default
spec:
selector:
app: grafana
type: NodePort
ports:
- protocol: TCP
port: 3000
targetPort: 3000
nodePort: 3000
Который дает:
The Service "grafana" is invalid: spec.ports[0].nodePort: Invalid value: 3000: provided port is not in the valid range. The range of valid ports is 30000-32767
Вроде как-то сбрасывается диапазон служебных портов. Развертывание Grafana и другие развертывания, а также услуги InfxDB и Telegraf (не типа «NodePort»!) Не вызывают проблем. Тот же код не вызывает подобных проблем в стандартной Linux-системе.
Теперь несколько вопросов:
- Как я могу отобразить текущий статус диапазона портов сервисного узла?
- Почему / где можно было изменить спектр услуг?
- В качестве обходного пути: как обновить диапазон портов службы на работающем узле / kube-api?
/etc/kubernetes/manifests/kube-apiserver.yaml
, и там должна быть строка--service-node-port-range
.minikube logs | grep ServiceNodePortRange
должен показать вам текущий статус диапазона портов сервисного узла, вы также можете проверить его при редактировании kube-apiserver yaml. - person Jakub   schedule 10.02.2020