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 / unix / Perguntas / 428459
Accepted
Volker Raschek
Volker Raschek
Asked: 2018-03-07 02:35:12 +0800 CST2018-03-07 02:35:12 +0800 CST 2018-03-07 02:35:12 +0800 CST

portas de exportação do kubernetes

  • 772

Gostaria de vincular meu serviço em todos os nós às portas 80 e 443, para que eu seja redirecionado por meio de um nome DNS (kubernetes) para qualquer nó que me redirecione diretamente para o serviço via HTTP/S e depois para a implantação (nginx ). Porém, não sei exatamente como isso funciona, pois o alcance dos NodePorts só vai de 30000 a 32xxx.

Aqui está minha configuração

DNS-Name      IPv4
k8s-master    172.25.35.47
k8s-node-01   172.25.36.47
k8s-node-02   172.25.36.8
kubernetes    172.25.36.47
kubernetes    172.25.36.8

Meu arquivo yaml

apiVersion: v1
kind: Service
metadata:
  name: proxy
spec:
  ports:
  - name: http
    nodePort: 80     
    port: 80            
    protocol: TCP      
    targetPort: 80     
  - name: https
    nodePort: 443     
    port: 443           
    protocol: TCP       
    targetPort: 443     
  selector:
    name: proxy
  type: NodePort
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: proxy
  labels:
    name: proxy
spec:
  selector:
    matchLabels:
      name: proxy
  replicas: 1
  template:
    metadata:
     labels:
       name: proxy
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - name: http
          containerPort: 80
          protocol: TCP
        - name: https
          containerPort: 443
          protocol: TCP

Que tipo de serviço me fornece uma função para expor essas portas ou como posso realizar minha configuração mental?

Volker

port-forwarding kubernetes
  • 1 1 respostas
  • 664 Views

1 respostas

  • Voted
  1. Best Answer
    Cyclic3
    2018-04-07T09:09:08+08:002018-04-07T09:09:08+08:00

    Você tem duas opções:

    1. encaminhamento de porta simples
    2. IPs externos
    3. manter-vivo

    Encaminhamento de porta simples

    Execute o seguinte em todos os servidores

    sudo iptables -t nat -I PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports <nodeport>
    sudo iptables -t nat -I OUTPUT -p tcp -o lo --dport 443 -j REDIRECT --to-ports <nodeport>
    

    substitua <nodeport>pela porta que você escolher para nodeport. Isso exige que você execute um comando em todas as máquinas e é um pouco hacks. Uma solução melhor seria:

    Ips externos

    link para documentos

    Isso permite vincular qualquer porta em um nó específico, que será roteado pelo cluster. Isso fornece um único ponto de falha, obviamente, que pode ser corrigido com:

    manter-vivo

    Keepalived é um software muito simples. Ele cria um endereço IP virtual, que é movido para apontar para um nó diferente quando o mestre falha. Ele cria com eficiência um endereço IP de alias para o servidor master keepalived. Um bom começo seria keepalived-vip , que configura automaticamente o keepalived para os serviços que você fornece.

    conclusão

    Eu pessoalmente uso o keepalived-vip para isso, pois ele se encaixa muito melhor no meu modelo de rede, mas se seus clientes puderem acessar qualquer um de seus servidores, o encaminhamento de porta simples é a única maneira de fazer isso.

    • 1

relate perguntas

  • Como fazer o encaminhamento de porta SSH para HTTPS?

  • incapaz de extrair imagens no kubernetes do registro privado

Sidebar

Stats

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

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    ssh Não é possível negociar: "nenhuma cifra correspondente encontrada", está rejeitando o cbc

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    Como descarregar o módulo do kernel 'nvidia-drm'?

    • 13 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add retorna com: "Erro ao conectar ao agente: nenhum arquivo ou diretório" 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk 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