Networking and DNS in Kubernetes local cluster with Docker

I have downloaded Kubernetes binaries from release tag in Github.
I placed the binaries in my path (i.e. kubectl)

I followed this guide to start up a simple local cluster with Docker containers:

  • fedora 24 run docker 32-bit image
  • slow or timeout of dns resolving inside docker
  • Oracle DB+Weblogic in a single container
  • Docker Error : Cannot use --lxc-conf with execdriver: native-0.2
  • How to use docker deploy in docker-compose 3?
  • how to centralized log file on docker container?
  • Now I can contact Kubernetes API from and I got Nginx pod running and service exposed.
    I have a ‘docker0’ interface with range
    Doing ‘docker inspect’ to the containers returns me IP from that range.
    Doing ‘kubectl get services’ returns me IPs from range
    I can reach Nginx using the IP from 10.0.0.x and 172.16.x.x

    How is the networking set up?
    Why ‘nginx’ service is not showed up in /api/v1/services?

    Also I want to set up monitoring with Heapster+InfluxDB+Grafana.
    Heapster will try to connect to InfluxDB using a hostname that fails to resolve.
    So I searched how to bring up DNS server for Kubernetes.
    I modified a little the files yaml under kubernetes/cluster/addons/dns
    skydns-rc.yaml require the Kubernetes Master IP to make calls to the API to discover services.

    What is the Kubernetes Master IP?
    From the docker host Kubernetes Master IP is but it is not reachable from inside the pods (afaik inside the pods is the pod itself)
    It isnt because its not working from the docker host neither from the kube2sky container.

    I cant find any help in the documentation or Github as it is very focused for cloud and GCE.

    Thanks for your help!

  • Docker “config” Container / Docker image
  • docker API v2 - how to tag and push an image
  • How is a Docker Machine marked as active?
  • IP address and port of the host where Docker is running on?
  • Docker Container Library Duplication
  • How can a Docker Container get host's system information(df, ps)?
  • One Solution collect form web for “Networking and DNS in Kubernetes local cluster with Docker”

    The DNS pod can use the KUBERNETES_SERVICE_HOST environment variable or the IP of the machine you’re really on (rather than if you don’t have service accounts configured (probably don’t)

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.