AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1164426
Accepted
Ryan Grush
Ryan Grush
Asked: 2024-08-28 06:54:11 +0800 CST2024-08-28 06:54:11 +0800 CST 2024-08-28 06:54:11 +0800 CST

Proxy reverso para servidor K8 API

  • 772

Temos vários clusters K8 em execução no AKS e precisamos de um endereço IP estático para cada um dos seus servidores de API. Tentei vários serviços do Azure para fazer isso (Front Door, App Gateway, API Management), mas todos eles apresentam problemas quando tento configurar o servidor de backend/origem. Eles reclamam frequentemente sobre a falta de uma cadeia de certificados SSL.

Estou tentando explorar o uso de uma VM Nginx simples como um proxy de camada 4 para meu servidor de API AKS, mas também estou tendo problemas.

Originalmente eu tinha isso no meu /etc/nginx/nginx.confarquivo -

stream {
    upstream k8s_servers {
        hash $remote_addr consistent;
        server example1234.hcp.eastus.azmk8s.io:443;
    }

    server {
        listen 6443;
        proxy_pass k8s_servers;

    }
}

Em seguida, editei meu ~/.kube/configarquivo e editei minha configuração de cluster para ler -

- cluster:
    certificate-authority-data: XXXXXX
    server: https://k8-jumpbox.example.com

Quando eu corro kubectl get podseu recebo -

context deadline exceeded - error from a previous attempt: EOF

Alguém pode me ajudar a apontar o que estou fazendo errado ou uma solução melhor?

nginx
  • 1 1 respostas
  • 53 Views

1 respostas

  • Voted
  1. Best Answer
    Ryan Grush
    2024-08-29T22:54:33+08:002024-08-29T22:54:33+08:00

    Foi isso que acabei decidindo. Essa resposta me ajudou a apontar a direção certa.

    load_module /usr/lib/nginx/modules/ngx_stream_module.so;
    
    events {}
    
    stream {
        # Define the upstream servers
        upstream foo_upstream_443 {
            hash $remote_addr consistent;
            server foo.hcp.eastus.azmk8s.io:443;
        }
    
        upstream foo_upstream_6443 {
            hash $remote_addr consistent;
            server foo.hcp.eastus.azmk8s.io:6443;
        }
    
        upstream bar_upstream_443 {
            hash $remote_addr consistent;
            server bar.hcp.eastus.azmk8s.io:443;
        }
    
        upstream bar_upstream_6443 {
            hash $remote_addr consistent;
            server bar.hcp.eastus.azmk8s.io:6443;
        }
    
        map $ssl_server_name $backend_443 {
            foo.example.com foo_upstream_443;
            bar.example.com bar_upstream_443;
        }
    
        map $ssl_preread_server_name $backend_6443 {
            foo.example.com foo_upstream_6443;
            bar.example.com bar_upstream_6443;
        }
    
        server {
            listen 443 ssl;
    
            proxy_pass $backend_443;
            proxy_timeout 120s;
            proxy_ssl on;
    
            ssl_certificate /etc/nginx/example.crt;
            ssl_certificate_key /etc/nginx/example.key;
        }
    
        server {
            listen 6443;
    
            proxy_pass $backend_6443;
            proxy_timeout 120s;
            ssl_preread on;
            proxy_ssl on;
    
            ssl_certificate /etc/nginx/example.crt;
            ssl_certificate_key /etc/nginx/example.key;
        }
    }
    
    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve