From e2b9d94075870b798619b3e088be13f870e3c6d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=B5=D1=80=D0=B3=D0=B5=D0=B9=20=D0=90=D0=BD=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=BF=D0=BE=D0=B2?= Date: Sun, 26 Oct 2025 09:07:00 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=BF=D0=BE=D1=80=D1=82=D1=8B=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20NodePort=20=D0=B8=20=D0=B4=D0=BE=D0=B1?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20Helm=20=D1=80=D0=B5?= =?UTF-8?q?=D0=BF=D0=BE=D0=B7=D0=B8=D1=82=D0=BE=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Изменены порты Prometheus, Grafana и Kiali на NodePort диапазон (30000-32767) - Добавлены Helm репозитории для Kiali и Prometheus - Исправлена логика extraPortMappings для правильного маппинга портов - Prometheus: 30900, Grafana: 30000, Kiali: 32001 --- molecule/presets/k8s/kubernetes.yml | 12 ++++++------ scripts/create_k8s_cluster.py | 20 ++++++++++++-------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/molecule/presets/k8s/kubernetes.yml b/molecule/presets/k8s/kubernetes.yml index 0a94f56..8a00d1d 100644 --- a/molecule/presets/k8s/kubernetes.yml +++ b/molecule/presets/k8s/kubernetes.yml @@ -48,15 +48,15 @@ kind_clusters: # Документация: https://devops.org.ru # Ingress HTTP: http://localhost:8081 # Ingress HTTPS: https://localhost:8443 - # Prometheus: http://localhost:9090 - # Grafana: http://localhost:3000 (admin/admin) - # Kiali: http://localhost:20001 + # Prometheus: http://localhost:30900 + # Grafana: http://localhost:30000 (admin/admin) + # Kiali: http://localhost:32001 addon_ports: ingress_http: 8081 ingress_https: 8443 - prometheus: 9090 - grafana: 3000 - kiali: 20001 + prometheus: 30900 + grafana: 30000 + kiali: 32001 hosts: # Стандартный набор - 2 хоста для базового тестирования (стабильные ОС) diff --git a/scripts/create_k8s_cluster.py b/scripts/create_k8s_cluster.py index 8f8c03b..b853893 100755 --- a/scripts/create_k8s_cluster.py +++ b/scripts/create_k8s_cluster.py @@ -142,26 +142,26 @@ def main(): 'protocol': 'TCP' }) - # Prometheus порт + # Prometheus порт - мапим NodePort на hostPort if addon_ports.get('prometheus'): port_mappings.append({ - 'containerPort': 9090, + 'containerPort': addon_ports['prometheus'], 'hostPort': addon_ports['prometheus'], 'protocol': 'TCP' }) - # Grafana порт + # Grafana порт - мапим NodePort на hostPort if addon_ports.get('grafana'): port_mappings.append({ - 'containerPort': 3000, + 'containerPort': addon_ports['grafana'], 'hostPort': addon_ports['grafana'], 'protocol': 'TCP' }) - # Kiali порт + # Kiali порт - мапим NodePort на hostPort if addon_ports.get('kiali'): port_mappings.append({ - 'containerPort': 20001, + 'containerPort': addon_ports['kiali'], 'hostPort': addon_ports['kiali'], 'protocol': 'TCP' }) @@ -241,13 +241,17 @@ def main(): if addons.get('kiali'): print(" - Installing Kiali") subprocess.run(f"kubectl --server=https://{name}-control-plane:6443 --insecure-skip-tls-verify create ns istio-system", shell=True, capture_output=True) + # Добавляем Helm репозиторий Kiali + run_cmd(f"helm repo add kiali https://kiali.org/helm-charts") + run_cmd(f"helm repo update") # Используем исправленный kubeconfig run_cmd(f"KUBECONFIG=/tmp/istio-kubeconfig-{name}.yaml helm upgrade --install kiali-server kiali/kiali-server --namespace istio-system --set auth.strategy=anonymous --wait --timeout 180s") if addons.get('prometheus_stack'): print(" - Installing Prometheus Stack") - run_cmd(f"helm repo add prometheus-community https://prometheus-community.github.io/helm-charts") - run_cmd(f"helm repo update") + # Добавляем Helm репозиторий Prometheus + subprocess.run(f"helm repo add prometheus-community https://prometheus-community.github.io/helm-charts", shell=True, capture_output=True) + subprocess.run(f"helm repo update", shell=True, capture_output=True) subprocess.run(f"kubectl --server=https://{name}-control-plane:6443 --insecure-skip-tls-verify create ns monitoring", shell=True, capture_output=True) # Используем исправленный kubeconfig run_cmd(f"KUBECONFIG=/tmp/istio-kubeconfig-{name}.yaml helm upgrade --install monitoring prometheus-community/kube-prometheus-stack --namespace monitoring --set grafana.adminPassword=admin --set grafana.defaultDashboardsTimezone=browser --wait --timeout 600s")