Onde está a documentação das configurações do servidor da API do Kubernetes?

7

Questões

Onde estão as explicações ou documentações dos parâmetros de configuração do Kubernetes API Server?

fundo

Existem parâmetros para configurar o servidor da API do Kubernetes, por exemplo, KUBE_API_ADDRESS (que parece precisar ser alterado de 127.0.0.1) para que o cluster de vários nós funcione.

Procurando uma documentação de configuração definida de como configurar o servidor API, mas até agora não foi possível encontrar um.

O Setup CentOS (Kubernetes.io) diz abaixo.

# The address on the local server to listen to.
KUBE_API_ADDRESS="--address=0.0.0.0"

Kubernetes GitHub diz abaixo.

# --insecure-bind-address=127.0.0.1: The IP address on which to serve the --insecure-port.
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"

A conexão ao servidor da API Kubernetes de fora da caixa nº 250 do Vagrant diz abaixo.

Por padrão, o kube-apiserver escuta apenas em 127.0.0.1. Sem reconfigurar, não é possível conectar ao Kubernetes usando o kubectl de outra máquina.

O Kubernetes 1.7 / etc / kubernetes / apiserver está abaixo.

###
# kubernetes system config
#
# The following values are used to configure the kube-apiserver
#

# The address on the local server to listen to.
KUBE_API_ADDRESS="--insecure-bind-address=127.0.0.1"

# The port on the local server to listen on.
# KUBE_API_PORT="--port=8080"

# Port minions listen on
# KUBELET_PORT="--kubelet-port=10250"

# Comma separated list of nodes in the etcd cluster
KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"

# Address range to use for services
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

# default admission control policies
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"

# Add your own!
KUBE_API_ARGS=""
seg
fonte
@ Tensibai, receio que não tenha referência a "--address = 0.0.0.0" nem a KUBE_API_ADDRESS. Gostaria de saber onde eles são explicados.
seg
O link direto vai para a API v1. 8, não tenho idéia do que CentOS versão do seu exemplo vem de, ver bind-address
Tensibai

Respostas:

4

https://github.com/kubernetes/kubernetes/blob/master/cluster/centos/master/scripts/apiserver.sh

# Insecure kube configuration parameters go under here when node['kubernetes']['secure']['enabled'] == 'false'
<% if node['kubernetes']['secure']['enabled'] == 'false' -%>
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
...

# Secure kube configuration parameters go under here when node['kubernetes']['secure']['enabled'] == 'true'
<% if node['kubernetes']['secure']['enabled'] == 'true' -%>
KUBE_API_ADDRESS="--bind-address=0.0.0.0 --insecure-bind-address=127.0.0.1 "
...

Parece que o KUBE_API_ADDRESSouvirá apenas 0.0.0.0 se o kubernetes estiver protegido.

030
fonte