Initial commit

This commit is contained in:
Silvio
2018-04-04 15:36:08 +02:00
commit 5d28641ddb
6 changed files with 278 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
<!--
If you are reporting a new issue, make sure that we do not have any duplicates
already open. You can ensure this by searching the issue list for this
repository. If there is a duplicate, please close your issue and add a comment
to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to
include the BUG REPORT INFORMATION shown below. If you fail to provide this
information within 7 days, we cannot debug your issue and we'll close it. We
will, however, reopen it if you later provide the information.
-------------------------------
BUG REPORT INFORMATION
-------------------------------
Use the commands below to provide key information from your environment:
You do NOT have to include this information if this is a FEATURE REQUEST
-->
**Description**
<!-- Briefly describe the problem you are having in a few paragraphs. -->
**Steps to reproduce the issue:**
1. [First Step]
2. [Second Step]
3. [and so on...]
**Describe the results you received:**
<!-- What actually happens -->
**Describe the results you expected:**
<!-- What you expect to happen -->
**Additional information you deem important (e.g. issue happens only occasionally):**
<!-- Any additional information, configuration or data that might be necessary to reproduce the issue. -->
**Version**
- Output of `docker version`:
```
(paste your output here)
```
- Output of `docker info`:
```
(paste your output here)
```
- Output of `docker-compose version` (if applicable):
```
(paste your output here)
```
**Additional environment details (AWS, VirtualBox, Docker for MAC, physical, etc.):**

View File

@@ -0,0 +1,32 @@
<!--
Before you open the request please review the following guidelines and tips to help it be more easily integrated:
- Describe the scope of your change - i.e. what the change does.
- Describe any known limitations with your change.
- Please run any tests or examples that can exercise your modified code.
Thank you for contributing! We will try to test and integrate the change as soon as we can, but be aware we have many GitHub repositories to manage and can't immediately respond to every request. There is no need to bump or check in on a pull request (it will clutter the discussion of the request).
Also don't be worried if the request is closed or not integrated sometimes the priorities of Bitnami might not match the priorities of the pull request. Don't fret, the open source community thrives on forks and GitHub makes it easy to keep your changes in a forked repo.
-->
**Description of the change**
<!-- Describe the scope of your change - i.e. what the change does. -->
**Benefits**
<!-- What benefits will be realized by the code change? -->
**Possible drawbacks**
<!-- Describe any known limitations with your change -->
**Applicable issues**
<!-- Enter any applicable Issues here (You can reference an issue using #) -->
**Additional information**
<!-- If there's anything else that's important and relevant to your pull
request, mention that information here.-->

View File

@@ -0,0 +1,30 @@
FROM bitnami/minideb as development
ARG KSM_VERSION=1.2.0
ARG GO_VERSION=1.9.4
RUN install_packages wget ca-certificates git make tar wget gcc
RUN wget -nc https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz && \
tar -C /usr/local -xzf go$GO_VERSION.linux-amd64.tar.gz
ENV GOPATH=/
ENV PATH=$GOPATH/bin:/usr/local/go/bin:$PATH
RUN mkdir -p /src/k8s.io && \
cd /src/k8s.io && \
git clone -b v${KSM_VERSION} --depth 1 https://github.com/kubernetes/kube-state-metrics.git && \
cd /src/k8s.io/kube-state-metrics && \
make build
FROM bitnami/minideb:jessie
LABEL maintainer "Bitnami <containers@bitnami.com>"
COPY --from=development /src/k8s.io/kube-state-metrics/kube-state-metrics /opt/bitnami/kube-state-metrics/bin/kube-state-metrics
COPY --from=development /src/k8s.io/kube-state-metrics/LICENSE /opt/bitnami/kube-state-metrics/LICENSE
ENV PATH="/opt/bitnami/kube-state-metrics/bin:$PATH"
EXPOSE 8080 8081
USER 1001
WORKDIR /opt/bitnami/kube-state-metrics
ENTRYPOINT ["/opt/bitnami/kube-state-metrics/bin/kube-state-metrics", "--port=8080", "--telemetry-port=8081"]

View File

@@ -0,0 +1,13 @@
Copyright (c) 2018 Bitnami
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@@ -0,0 +1,82 @@
[![CircleCI](https://circleci.com/gh/bitnami/bitnami-docker-kube-state-metrics/tree/master.svg?style=shield)](https://circleci.com/gh/bitnami/bitnami-docker-kube-state-metrics/tree/master)
# What is Kube-state-metrics?
kube-state-metrics is a simple service that listens to the Kubernetes API server and generates metrics about the state of the objects. (See examples in the Metrics section below.) It is not focused on the health of the individual Kubernetes components, but rather on the health of the various objects inside, such as deployments, nodes and pods.
The metrics are exported through the Prometheus golang client on the HTTP endpoint /metrics on the listening port (default 80). They are served either as plaintext or protobuf depending on the Accept header. They are designed to be consumed either by Prometheus itself or by a scraper that is compatible with scraping a Prometheus client endpoint. You can also open /metrics in a browser to see the raw metrics.
[https://github.com/kubernetes/kube-state-metrics](https://github.com/kubernetes/kube-state-metrics)
# TL;DR;
Deploy Kube-state-metrics on your [Kubernetes cluster](https://github.com/kubernetes/kube-state-metrics/tree/master/Documentation).
# Why use Bitnami Images?
* Bitnami closely tracks upstream source changes and promptly publishes new versions of this image using our automated systems.
* With Bitnami images the latest bug fixes and features are available as soon as possible.
* Bitnami containers, virtual machines and cloud images use the same components and configuration approach - making it easy to switch between formats based on your project needs.
* Bitnami images are built on CircleCI and automatically pushed to the Docker Hub.
* All our images are based on [minideb](https://github.com/bitnami/minideb) a minimalist Debian based container image which gives you a small base container image and the familiarity of a leading linux distribution.
# Get this image
The recommended way to get the Bitnami Kube-state-metrics Docker Image is to pull the prebuilt image from the [Docker Hub Registry](https://hub.docker.com/r/bitnami/kube-state-metrics).
```bash
$ docker pull bitnami/kube-state-metrics:latest
```
To use a specific version, you can pull a versioned tag. You can view the [list of available versions](https://hub.docker.com/r/bitnami/kube-state-metrics/tags/) in the Docker Hub Registry.
```bash
$ docker pull bitnami/kube-state-metrics:[TAG]
```
If you wish, you can also build the image yourself.
```bash
$ docker build -t bitnami/kube-state-metrics:latest https://github.com/bitnami/bitnami-docker-kube-state-metrics.git
```
# Configuration
Resource recommendation
Resource usage changes with the size of the cluster. As a general rule, you should allocate
200MiB memory
0.1 cores
For clusters of more than 100 nodes, allocate at least
2MiB memory per node
0.001 cores per node
# Contributing
We'd love for you to contribute to this container. You can request new features by creating an [issue](https://github.com/bitnami/bitnami-docker-kube-state-metrics/issues), or submit a [pull request](https://github.com/bitnami/bitnami-docker-kube-state-metrics/pulls) with your contribution.
# Issues
If you encountered a problem running this container, you can file an [issue](https://github.com/bitnami/bitnami-docker-kube-state-metrics/issues). For us to provide better support, be sure to include the following information in your issue:
- Host OS and version
- Docker version (`docker version`)
- Output of `docker info`
- Version of this container
- The command you used to run the container, and any relevant output you saw (masking any sensitive information)
# License
Copyright 2018 Bitnami
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@@ -0,0 +1,61 @@
version: 2
jobs:
build:
working_directory: /workdir
docker:
- image: docker:17.06.0-ce-git
environment:
RELEASE_SERIES_LIST: "1"
LATEST_STABLE: "1"
IMAGE_NAME: kube-state-metrics
DOCKER_PROJECT: bitnami
steps:
- checkout
- setup_remote_docker:
version: 17.06.0-ce
- run:
name: Upgrade system packages (workaround - https://github.com/docker-library/docker/issues/72)
command: |
apk upgrade --no-cache
- run:
name: Install dependencies
command: |
apk add --no-cache curl bash coreutils
- run:
name: Docker info
command: |
docker version
docker info
- restore_cache:
keys:
- cache-{{ .Branch }}
paths:
- /cache/layers.tar
- run:
name: Build docker image
command: |
curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-image-test.sh | bash -
- save_cache:
key: cache-{{ .Branch }}-{{ epoch }}
paths:
- /cache/layers.tar
- deploy:
name: Publish docker image
command: |
if [ -n "${CIRCLE_TAG}" ]; then
curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-release-image.sh | bash -
elif [ "${CIRCLE_BRANCH}" == "master" ]; then
curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-development-image.sh | bash -
fi
workflows:
version: 2
build-and-deploy:
jobs:
- build:
filters:
branches:
only: /.*/
tags:
only: /^[0-9].*-r[0-9]+$/