Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
linux_faq:kubernetes_using_single_node_as_master_and_worker [2020/07/09 15:01] – [Ingress, Cert-Manager и сертификаты Let's Encrypt] adminlinux_faq:kubernetes_using_single_node_as_master_and_worker [2021/07/14 07:59] – [Ingress-controller] admin
Line 105: Line 105:
 и в **spec.template.spec.containers.args** добавляем: и в **spec.template.spec.containers.args** добавляем:
 <code>  - --kubelet-insecure-tls</code> <code>  - --kubelet-insecure-tls</code>
 +Без этого параметра metrics-server не запустится, а в логах будет примерно такое:
 +<<code>[unable to fully scrape metrics from node kub-worker01: unable to fetch metrics from node kub-sbl-apps-dev-worker01: Get "https://192.168.44.11:10250/stats/summary?only_cpu_and_memory=true": x509: cannot validate certificate for 192.168.44.11 because it doesn't contain any IP SANs </code>
 Все. Через некоторое время команды **kubectl top** начнут выдавать осмысленную информацию. \\ Все. Через некоторое время команды **kubectl top** начнут выдавать осмысленную информацию. \\
 Если этого не происходит, а в логах  Если этого не происходит, а в логах 
Line 146: Line 148:
 Либо тоже самое можно сделать с помощью helm-чарта: Либо тоже самое можно сделать с помощью helm-чарта:
   kubectl create ns ingress   kubectl create ns ingress
 +  helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
 +  helm repo update
 +
   #helm install stable/nginx-ingress --name http-https --namespace ingress   #helm install stable/nginx-ingress --name http-https --namespace ingress
-  helm install stable/nginx-ingress --name http-https --namespace ingress --set controller.service.type=LoadBalancer,controller.service.externalTrafficPolicy=Local,controller.service.loadBalancerIP=192.168.77.160 \+  helm upgrade --install nginx -n ingress ingress-nginx/ingress-nginx \ 
 +  --set controller.service.type=LoadBalancer,controller.service.externalTrafficPolicy=Local,controller.service.loadBalancerIP=192.168.77.160 \
   --set controller.addHeaders."X-XSS-Protection"="1\;mode=block" \   --set controller.addHeaders."X-XSS-Protection"="1\;mode=block" \
   --set controller.addHeaders."Content-Security-Policy"="default-src 'self'; \   --set controller.addHeaders."Content-Security-Policy"="default-src 'self'; \
Line 158: Line 164:
   --set controller.addHeaders."X-Content-Type-Options"="nosniff"   --set controller.addHeaders."X-Content-Type-Options"="nosniff"
 Ну или без драконовских запретов (заголовки **Content-Security-Policy** влияют на все ресурсы за этим **ingress-controller** и что-то может просто не заработать): Ну или без драконовских запретов (заголовки **Content-Security-Policy** влияют на все ресурсы за этим **ingress-controller** и что-то может просто не заработать):
-  helm upgrade http-https stable/nginx-ingress --set controller.service.type=LoadBalancer \+  helm upgrade --install nginx -ingress ingress-nginx/ingress-nginx \ 
 +  --set controller.service.type=LoadBalancer \
   --set controller.service.externalTrafficPolicy=Local \   --set controller.service.externalTrafficPolicy=Local \
   --set controller.service.loadBalancerIP=192.168.77.160 \   --set controller.service.loadBalancerIP=192.168.77.160 \
Line 166: Line 173:
   --set controller.addHeaders."X-Content-Type-Options"="nosniff"   --set controller.addHeaders."X-Content-Type-Options"="nosniff"
  
-В результате - в неймспейсе **ingress** появится сервис **http-https-nginx-ingress-controller**, у которого будет тип **LoadBalancer** и который получит указанный IP-адрес в локальной сети из диапазона, сконфигурированного для **metallb**. \\+В результате - в неймспейсе **ingress** появится сервис **nginx-ingress-nginx-controller**, у которого будет тип **LoadBalancer** и который получит указанный IP-адрес в локальной сети из диапазона, сконфигурированного для **metallb**. \\
 Теперь можно создавать **ingress**'ы, которые будут смотреть на сервисы внутри кластера и предоставлять к ним доступ. Пользователи будут посылать запросы на **ingress-controller**, а он, в свою очередь, - пересылать их на **ingress**'ы. Теперь можно создавать **ingress**'ы, которые будут смотреть на сервисы внутри кластера и предоставлять к ним доступ. Пользователи будут посылать запросы на **ingress-controller**, а он, в свою очередь, - пересылать их на **ingress**'ы.
  
  • linux_faq/kubernetes_using_single_node_as_master_and_worker.txt
  • Last modified: 2024/04/22 12:38
  • by admin