diff options
Diffstat (limited to 'doc/user/project/clusters/kubernetes_pod_logs.md')
-rw-r--r-- | doc/user/project/clusters/kubernetes_pod_logs.md | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/user/project/clusters/kubernetes_pod_logs.md b/doc/user/project/clusters/kubernetes_pod_logs.md new file mode 100644 index 00000000000..e0815b5b553 --- /dev/null +++ b/doc/user/project/clusters/kubernetes_pod_logs.md @@ -0,0 +1,32 @@ +# Kubernetes Pod Logs **[ULTIMATE]** + +> [Introduced](https://gitlab.com/gitlab-org/gitlab-ee/issues/4752) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 11.0. + +GitLab makes it easy to view the logs of running pods in [connected Kubernetes clusters](index.md). +By displaying the logs directly in GitLab, developers can avoid having to manage console tools or jump to a different interface. + +## Overview + +[Kubernetes](https://kubernetes.io) pod logs can be viewed directly within GitLab. Logs can be displayed by clicking on a specific pod from [Deploy Boards](../deploy_boards.md): + +1. Go to **Operations > Environments** and find the environment which contains the desired pod, like `production`. +1. On the **Environments** page, you should see the status of the environment's pods with [Deploy Boards](../deploy_boards.md). +1. When mousing over the list of pods, a tooltip will appear with the exact pod name and status. +![Deploy Boards pod list](img/pod_logs_deploy_board.png) +1. Click on the desired pod to bring up the logs view, which will contain the last 500 lines for that pod. Support for pods with multiple containers is coming [in a future release](https://gitlab.com/gitlab-org/gitlab-ee/issues/6502). +![Deploy Boards pod list](img/kubernetes_pod_logs.png) + +## Requirements + +There are a few key requirements in order to be able to use Pod Logs: + +1. [Create or connect a Kubernetes cluster to the project](index.md#adding-and-creating-a-new-gke-cluster-via-gitlab) +1. A GitLab Runner. If one is not available, they can be easily [deployed](index.md#installing-applications). +1. Ensure a Kubernetes label of `app: $CI_ENVIRONMENT_SLUG` is applied to the + deployments, replica sets, and pods, where `$CI_ENVIRONMENT_SLUG` is the value + of the [CI variable](../../../ci/variables/README.md#predefined-environment-variables). + This needed to determine the environment a pod belongs to + when is more than one. These resources should be + contained in the namespace defined in the Kubernetes service setting. + The [Auto DevOps](../../../topics/autodevops/index.md) `.gitlab-ci.yml` template has predefined + stages and commands to use, and automatically applies the labeling. |