До того, как у меня был один единственный vm (centos 7.4, имя хоста kube-2.novalocal, ip 172.50.10.10
), я установил в него как master, так и kubelet, и я мог получить доступ к своему входу с помощью 172.50.10.10/uaa/login
. Внутри кластера я использую ClusterIP и развернул входной Nginx в качестве NodePort на входе. Так как это перенаправление / перезапись, поэтому я изменил нодпорт на 80, избегая опущенного порта. URL службы http://172.50.10.10/uaa/login
. И это отлично работает.
Теперь я добавил два узла (kube-1.novalocal / 172.50.10.1 и kube-3.novalocal / 172.50.10.4). Я мог видеть, что вход развернут kubernetes на kube-3.novalocal. И он часто перезагружается, он перезапускается почти каждую минуту. И я также не знаю URL-адрес входного сервиса. http://kube-2.novalocal/uaa/login or http://kube-3.novalocal/uaa/login?
Почему он так часто перезагружается?
Я разместил здесь все связанные файлы yaml, файл журнала, вывод команд консоли и информацию панели управления.
[centos@kube-2 ingress]$ sudo kubectl get po
NAME READY STATUS RESTARTS AGE
gearbox-rack-api-gateway 1/1 Running 0 15h
gearbox-rack-config-server 1/1 Running 0 15h
gearbox-rack-eureka-server 1/1 Running 0 15h
gearbox-rack-rabbitmq 1/1 Running 0 15h
gearbox-rack-redis 1/1 Running 0 15h
gearbox-rack-uaa-service 1/1 Running 0 15h
gearbox-rack-zipkin-server 1/1 Running 0 15h
ingress-nginx-5c6d78668c-brlsv 1/1 Running 279 15h
nginx-default-backend-6647766887-nbwhl 1/1 Running 0 15h
Доступ к URL-адресу доступа в kube-3.novalocal (172.50.10.4):
[centos@kube-2 ingress]$ curl http://172.50.10.4/uaa/login
curl: (7) Failed connect to 172.50.10.4:80; Connection refused
журналы ingress-nginx:
[centos@kube-2 ingress]$ sudo kubectl logs ingress-nginx-5c6d78668c-frb2r
-------------------------------------------------------------------------------
NGINX Ingress controller
Release: 0.15.0
Build: git-df61bd7
Repository: https://github.com/kubernetes/ingress-nginx
-------------------------------------------------------------------------------
W0703 02:16:35.966965 7 client_config.go:533] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.
I0703 02:16:35.967483 7 main.go:158] Creating API client for https://10.96.0.1:443
Изображения Дашборада выглядят следующим образом:
вход-Nginx-res.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-ingress
namespace: default
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
rules:
- host:
http:
paths:
- path: /
backend:
serviceName: gearbox-rack-api-gateway
servicePort: 5555
вход-Nginx-ctl.yaml
kind: Service
apiVersion: v1
metadata:
name: ingress-nginx
spec:
type: NodePort
selector:
app: ingress-nginx
ports:
- name: http
port: 80
nodePort: 80
---
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
name: ingress-nginx
spec:
replicas: 1
template:
metadata:
labels:
app: ingress-nginx
spec:
terminationGracePeriodSeconds: 60
serviceAccount: lb
containers:
- image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.15.0
name: ingress-nginx
imagePullPolicy: Always
ports:
- name: http
containerPort: 80
protocol: TCP
- name: https
containerPort: 443
protocol: TCP
livenessProbe:
httpGet:
path: /healthz
port: 10254
scheme: HTTP
initialDelaySeconds: 30
timeoutSeconds: 5
env:
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
args:
- /nginx-ingress-controller
- --default-backend-service=$(POD_NAMESPACE)/nginx-default-backend
kubeadm.yaml
apiVersion: kubeadm.k8s.io/v1alpha1
kind: MasterConfiguration
apiServerExtraArgs:
service-node-port-range: 80-32767
networking:
podSubnet: 192.168.0.0/16
kubernetesVersion: v1.10.3
featureGates:
CoreDNS: true
=============================================== ==
издание два
Контроллер Ingress-nginx обновлен до версии 0.16.2, то же развертывание, что и раньше, ingress-nginx продолжает перезапуск почти каждые две минуты.
NAME READY STATUS RESTARTS AGE
ingress-nginx-59b74f9684-lgm2k 0/1 CrashLoopBackOff 9 20m 192.168.179.5 kube-3.novalocal