<p>Sorry for the noob question but from <a href="https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/getting-started-guides/logging-elasticsearch.md" rel="noreferrer">https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/getting-started-guides/logging-elasticsearch.md</a>
it says:   </p>

<blockquote>
  <p>To use Elasticsearch and Kibana for cluster logging you should set the
  following environment variable as shown below:</p>
</blockquote>

<pre><code>KUBE_LOGGING_DESTINATION=elasticsearch
</code></pre>

<p>Where and how do I set this Env Var ? I was thinking that I should use       </p>

<pre><code>gcloud container clusters create   
</code></pre>

<p>and pass the options there but there is no options...</p>

<p>As already mentioned in Robert's answer the Elasticsearch/Kibana stack needs to be added manually if the cluster is supposed to run on Google Container Engine (GKE). Using the information given in this <a href="https://groups.google.com/forum/#!topic/google-containers/Q1nvl8IAbqc" rel="noreferrer">post</a>, I was able to get it to work performing the following steps:</p>

<ol>
<li><p>Start a GKE Cluster without cloud logging</p>

<pre><code>gcloud container --project &lt;PROJECT_ID&gt; clusters create &lt;CLUSTER_ID&gt; --no-enable-cloud-logging
</code></pre></li>
<li><p>Add a configured fluentd container to each running node by using a kubernetes DaemonSet.</p>

<pre><code>kubectl create -f fluentd-es.yaml
</code></pre>

<p><strong>fluentd-es.yaml</strong></p>

<pre><code>apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  name: fluentd-elasticsearch
  namespace: kube-system
  labels:
    app: fluentd-logging

spec:
  template:
    metadata:
      labels:
        app: fluentd-es
    spec:
      containers:
      - name: fluentd-elasticsearch
        image: gcr.io/google_containers/fluentd-elasticsearch:1.15
        resources:
          limits:
            memory: 200Mi
          requests:
            cpu: 100m
            memory: 200Mi
        volumeMounts:
        - name: varlog
          mountPath: /var/log
        - name: varlibdockercontainers
          mountPath: /var/lib/docker/containers
          readOnly: true
      volumes:
      - name: varlog
        hostPath:
          path: /var/log
      - name: varlibdockercontainers
        hostPath:
          path: /var/lib/docker/containers
</code></pre></li>
<li><p>Add elasticsearch and kibana pods and services.</p>

<pre><code>kubectl create -f es-controller.yaml
kubectl create -f es-service.yaml
kubectl create -f kibana-controller.yaml
kubectl create -f kibana-service.yaml
</code></pre>

<p><em>Note below that the <code>kubernetes.io/cluster-service: "true"</code> label (present 
in the original <a href="https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch" rel="noreferrer">files</a>) has been removed.
Having this label in the definitions resulted in termination of the running pods.</em> </p>

<p><strong>es-controller.yaml</strong></p>

<pre><code>apiVersion: v1
kind: ReplicationController
metadata:
  name: elasticsearch-logging-v1
  namespace: kube-system
  labels:
    k8s-app: elasticsearch-logging
    version: v1
spec:
  replicas: 2
  selector:
    k8s-app: elasticsearch-logging
    version: v1
  template:
    metadata:
      labels:
        k8s-app: elasticsearch-logging
        version: v1
        kubernetes.io/cluster-service: "true"
    spec:
      containers:
      - image: gcr.io/google_containers/elasticsearch:1.8
        name: elasticsearch-logging
        resources:
          limits:
            cpu: 100m
          requests:
            cpu: 100m
        ports:
        - containerPort: 9200
          name: db
          protocol: TCP
        - containerPort: 9300
          name: transport
          protocol: TCP
        volumeMounts:
        - name: es-persistent-storage
          mountPath: /data
      volumes:
      - name: es-persistent-storage
        emptyDir: {}
</code></pre>

<p><strong>es-service.yaml</strong></p>

<pre><code>apiVersion: v1
kind: Service
metadata:
  name: elasticsearch-logging
  namespace: kube-system
  labels:
    k8s-app: elasticsearch-logging
    kubernetes.io/name: "Elasticsearch"
spec:
  ports:
  - port: 9200
    protocol: TCP
    targetPort: db
  selector:
    k8s-app: elasticsearch-logging
</code></pre>

<p><strong>kibana-controller.yaml</strong></p>

<pre><code>apiVersion: v1
kind: ReplicationController
metadata:
  name: kibana-logging-v1
  namespace: kube-system
  labels:
    k8s-app: kibana-logging
    version: v1
spec:
  replicas: 1
  selector:
    k8s-app: kibana-logging
    version: v1
  template:
    metadata:
      labels:
        k8s-app: kibana-logging
        version: v1
        kubernetes.io/cluster-service: "true"
    spec:
      containers:
      - name: kibana-logging
        image: gcr.io/google_containers/kibana:1.3
        resources:
          limits:
            cpu: 100m
          requests:
            cpu: 100m
        env:
          - name: "ELASTICSEARCH_URL"
            value: "http://elasticsearch-logging:9200"
        ports:
        - containerPort: 5601
          name: ui
          protocol: TCP
</code></pre>

<p><strong>kibana-service.yaml</strong></p>

<pre><code>apiVersion: v1
kind: Service
metadata:
  name: kibana-logging
  namespace: kube-system
  labels:
    k8s-app: kibana-logging
    kubernetes.io/name: "Kibana"
spec:
  ports:
  - port: 5601
    protocol: TCP
    targetPort: ui
  selector:
    k8s-app: kibana-logging
</code></pre></li>
<li><p>Create a kubectl proxy</p>

<pre><code>kubectl proxy
</code></pre></li>
<li><p>Watch your logs with kibana at</p>

<p><a href="http://localhost:8001/api/v1/proxy/namespaces/kube-system/services/kibana-logging/" rel="noreferrer">http://localhost:8001/api/v1/proxy/namespaces/kube-system/services/kibana-logging/</a></p></li>
</ol>
