Answers: <p><a href="https://github.com/kubernetes/kubernetes/blob/master/cluster/centos/master/scripts/apiserver.sh" rel="nofollow noreferrer">https://github.com/kubernetes/kubernetes/blob/master/cluster/centos/master/scripts/apiserver.sh</a></p>
  
  <blockquote>
  <pre><code># Insecure kube configuration parameters go under here when node['kubernetes']['secure']['enabled'] == 'false'
  &lt;% if node['kubernetes']['secure']['enabled'] == 'false' -%&gt;
  KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
  ...
  
  # Secure kube configuration parameters go under here when node['kubernetes']['secure']['enabled'] == 'true'
  &lt;% if node['kubernetes']['secure']['enabled'] == 'true' -%&gt;
  KUBE_API_ADDRESS="--bind-address=0.0.0.0 --insecure-bind-address=127.0.0.1 "
  ...
  </code></pre>
  </blockquote>
  
  <p>It seems that the <code>KUBE_API_ADDRESS</code> will only listen to 0.0.0.0 if kubernetes has been secured.</p>
  
Answers: CC BY-SA 3.0
Answers: 2017-11-12T14:04:55.253Z
Answers: 2017-11-12T14:18:08.507Z
Answers: 2017-11-12T14:18:08.507Z
Answers: 030
Body: <h2>Questions</h2>
  
  <p>Where is the explanations or documentations of the Kubernetes API Server configuration parameters?</p>
  
  <h2>Background</h2>
  
  <p>There are parameters to configure for Kubernetes API server e.g. KUBE_API_ADDRESS (which seems needs to be changed from 127.0.0.1) for multi node cluster to work.</p>
  
  <p>Looking for a definite configuration documentation of how to configure API server but so far could not find one. </p>
  
  <p><a href="https://kubernetes.io/docs/getting-started-guides/centos/centos_manual_config/" rel="noreferrer">Setup CentOS (Kubernetes.io)</a> says below.</p>
  
  <pre><code># The address on the local server to listen to.
  KUBE_API_ADDRESS="--address=0.0.0.0"
  </code></pre>
  
  <p><a href="https://github.com/kubernetes/kubernetes/blob/master/cluster/centos/master/scripts/apiserver.sh" rel="noreferrer">Kubernetes GitHub</a> says below.</p>
  
  <pre><code># --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"
  </code></pre>
  
  <p><a href="https://github.com/projectatomic/adb-atomic-developer-bundle/issues/250" rel="noreferrer">Connecting to Kubernetes API server from outside of Vagrant box #250</a> says below.</p>
  
  <blockquote>
    <p>By default kube-apiserver listens only on 127.0.0.1.
    Without reconfiguring it it is not possible to connect to Kubernetes using kubectl from another machine.</p>
  </blockquote>
  
  <p>Kubernetes 1.7 /etc/kubernetes/apiserver is below.</p>
  
  <pre><code>###
  # 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=""
  </code></pre>
  
Comments: CC BY-SA 3.0
Comments: 2017-11-09T12:19:55.910Z
Comments: https://kubernetes.io/docs/reference/ and https://kubernetes.io/docs/admin/kube-apiserver/
Comments: Tensibai
Comments: CC BY-SA 3.0
Comments: 2017-11-09T19:00:34.027Z
Comments: @Tensibai, I am afraid it has no reference to "--address=0.0.0.0" nor KUBE_API_ADDRESS. Would like to know where they are explained.
Comments: mon
Comments: CC BY-SA 3.0
Comments: 2017-11-09T22:14:35.243Z
Comments: Direct link goes to api v1. 8, I've no idea what centos version your example comes from, see bind-address
Comments: Tensibai
Tags: <kubernetes><documentation>
Title: Where is the documentation of Kubernetes API server configurations?
UserDisplayName: mon
ThreadText: # Where is the documentation of Kubernetes API server configurations?
  
  (Asked by: username_0 on 2017-11-08)
  
  ## Questions
  
  Where is the explanations or documentations of the Kubernetes API Server configuration parameters?
  
  ## Background
  
  There are parameters to configure for Kubernetes API server e.g. KUBE\_API\_ADDRESS (which seems needs to be changed from 127.0.0.1) for multi node cluster to work.
  
  Looking for a definite configuration documentation of how to configure API server but so far could not find one.
  
  [Setup CentOS (Kubernetes.io)](https://kubernetes.io/docs/getting-started-guides/centos/centos_manual_config/) says below.
  
  ```
  # The address on the local server to listen to.
  KUBE_API_ADDRESS="--address=0.0.0.0"
  
  ```
  
  [Kubernetes GitHub](https://github.com/kubernetes/kubernetes/blob/master/cluster/centos/master/scripts/apiserver.sh) says below.
  
  ```
  # --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"
  
  ```
  
  [Connecting to Kubernetes API server from outside of Vagrant box #250](https://github.com/projectatomic/adb-atomic-developer-bundle/issues/250) says below.
  
  > By default kube-apiserver listens only on 127.0.0.1.
  > Without reconfiguring it it is not possible to connect to Kubernetes using kubectl from another machine.
  
  Kubernetes 1.7 /etc/kubernetes/apiserver is below.
  
  ```
  ###
  # 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=""
  
  ```
  
  **Tags:** kubernetes, documentation
  
  > **Comments:**
  > **username_1**: https://kubernetes.io/docs/reference/ and https://kubernetes.io/docs/admin/kube-apiserver/  
  > **username_0**: @username_1, I am afraid it has no reference to "--address=0.0.0.0" nor KUBE_API_ADDRESS. Would like to know where they are explained.  
  > **username_1**: Direct link goes to api v1. 8, I've no idea what centos version your example comes from, see bind-address  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2017-11-12. Score: 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 "
  > ...
  >
  > ```
  
  It seems that the `KUBE_API_ADDRESS` will only listen to 0.0.0.0 if kubernetes has been secured.
  
  
  ---
  
  