https://github.com/quving/kubebana
A tool made for developers/devops to access the logs for techstacks kubernetes backbone.
https://github.com/quving/kubebana
Last synced: 3 months ago
JSON representation
A tool made for developers/devops to access the logs for techstacks kubernetes backbone.
- Host: GitHub
- URL: https://github.com/quving/kubebana
- Owner: Quving
- Created: 2020-06-01T00:41:23.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-06T08:02:38.000Z (over 2 years ago)
- Last Synced: 2025-01-30T23:48:57.189Z (5 months ago)
- Language: Vue
- Homepage:
- Size: 1.69 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 32
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kubebana
[](https://drone.quving.com/Quving/kubebana)
A tool made for developers/devops to access the logs for techstacks kubernetes backbone.
## Motivation
Many companies use Kubernetes because Kubernetes now represents the industry standard.The framework is nowadays the backbone of every modern infrastructure of a tech company today. Kubernetes covers every imaginable function and everyone talks about it. However, Kubernetes is everything but not beginner-friendly due to its montrous complexity, even for DevOps. Kubernetes is not only a toy for Admins and DevOps. Developers who work in a tech company have to be familiar with Kubernetes as well. Sometimes a bug occurs in the application and the logs have to be analyzed. Depending on the [cloud provider](https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/) such as Azure, Aws, ... , developers have to authorize themselves differently, click through many non-trivial options and then access the logs. That's pain.The other common way to access the logs is to use the [kubectl](https://kubernetes.io/docs/reference/kubectl/overview/). To get logs from a specific Pod, the command looks something like this.
```
kubectl logs -f ares-api-c4f94b944-dzbv8 -n testing
```Except for the installation and setup of kubectl, the command is short and crisp, right? It is if you know the podname, whose postfix is usually generated by kubernetes, by memory. If not, you can start searching for the respective pod. For instance using the command to list all pods within the namespace:
```
kubectl get pods -n testing
```In addition, the admin must be careful when giving a user the rights for kubectl. With kubectl the whole cluster can be managed. What if the developer is only allowed to have access to certain pods/deployment? Appropriate knowledge about the user administration of kubectl is required.
Well, you get the pain-point...
## Solution
Kubebana is a tool that solves this problem. It is characterized by the simplicity of accessing the logs of specific deployments or pods. It is a webapp and its use does not require a special setup (for the user/developer).## Setup
### Environment Variablesweb-service
- VUE_APP_KUBEBANA_API_HOST (default: 'localhost')server-service
- None### docker-compose.yml
```
services:
api:
image: quving/kubebana:api-master
restart: always
ports:
- 5000:5000
volumes:
- ${HOME}/.kube/config:/root/.kube/config
environment:
- TZ=Europe/Berlinweb:
image: quving/kubebana:web-master
ports:
- 80:80
depends_on:
- server
environment:
- TZ=Europe/Berlin
- VUE_APPKUBEBANA_API_HOST=http://server:5000
```