• Stars
    star
    1,474
  • Rank 31,891 (Top 0.7 %)
  • Language
    Go
  • License
    Other
  • Created about 5 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Native Kubernetes container management platform supporting multi-tenant and multi-cluster

TKEStack - Tencent Kubernetes Engine Stack

TKEStack Logo build-web Go Report Card Release

Chinese document:https://tkestack.github.io/docs/

TKEStack is an open source project that provides a container management platform built for organizations that deploy containers in production. TKEStack makes it easy to run Kubernetes everywhere, meet IT requirements, and empower DevOps teams.

Features

  • Unified Cluster Management
    • Web console and command-line client for centrally manages multiple Kubernetes clusters.
    • Integration with your existing authentication mechanisms, including LDAP, OIDC, front proxy, and public OAuth providers such as GitHub.
    • Unified authorization management, not only at the cluster management level, but even at the Kubernetes resource level.
    • Multi-tenancy support, including team and user isolation of containers, builds, and network communication.
  • Application Workload Management
    • Provides an intuitive UI interface to support visualization and YAML import and other resource creation and editing methods, enabling users to run containers without learning all Kubernetes concepts up-front.
    • An abstract project-level resource container that supports multiple namespace management and deployment applications across multiple clusters.
  • Operation And Maintenance Management
    • Integrated system monitoring and application monitoring.
    • Persistent Kubernetes events and audit logs.
    • Limit, track, and manage the developers and teams on the platform.
  • Plugin Support And Management
    • Authentication identity provider plugin.
    • Authorization provider plugin.
    • Event persistence storage plugin.
    • System and application log persistence storage plugin.
    • Galaxy(Network)、TApp(Workload)、GPUManage(GPU)、CronHPA(HPA)、LBCF(LoadBalance)

Architecture

Architecture Of TKE

Installation

Minimum Requirements

  • Hardware
    • 8 vCPU
    • 16 GB of Memory
    • 100 GB of Disk Space
  • Operating Systems
    • ≥ Ubuntu 16.04/18.04 LTS (64-bit)
    • ≥ CentOS Linux 7.6 (64-bit)
    • ≥ Tencent Linux 2.2

QuickStart

  1. Check Requirements: Please confirm the installation requirements.

  2. Configure Installer: Please execute the following command in the terminal of your installer node.

    # Choose installation package according to your installation node CPU architecture [amd64, arm64]
    arch=amd64 version=v1.9.0 && wget https://tke-release-1251707795.cos.ap-guangzhou.myqcloud.com/tke-installer-linux-$arch-$version.run{,.sha256} && sha256sum --check --status tke-installer-linux-$arch-$version.run.sha256 && chmod +x tke-installer-linux-$arch-$version.run && ./tke-installer-linux-$arch-$version.run
  3. Configure Console & Global Cluster: Open your browser to http://【INSTALLER-NODE-IP】:8080/index.html, the Web GUI will guide you to initialize and install the TKEStack's Global Cluster and Console. You can refer to installation-procedures for more information.

  4. Enjoy TKEStack: Open your browser to http://console.tke.com.

TKEStack use tke-installer tool to deploy. Please refer to tke-installer for more information.

If you encounter problems during installation, you can refer to FAQ installation.

Upgrade

If you want to upgrade your TKEStack, please check Upgrade TKEStack with tke-installer.

Using

TKEStack Documentation

Developing

If you are interested in contributing to the TKEStack, please check the CONTRIBUTING.md first.

Make sure that you have Git-LFS installed before developing TKEStack.

If you have an eligible development environment, you can simply do it:

mkdir -p ~/tkestack
cd ~/tkestack
git clone https://github.com/tkestack/tke
cd tke
make

If you want to refer to this repo for code integration, please add replace section to your go.mod:

replace (
	github.com/NetEase-Object-Storage/nos-golang-sdk => github.com/karuppiah7890/nos-golang-sdk v0.0.0-20191116042345-0792ba35abcc
	github.com/chartmuseum/storage => github.com/leoryu/chartmuseum-storage v0.11.1-0.20211104032734-9da39e8f5170
	github.com/deislabs/oras => github.com/deislabs/oras v0.8.0
	google.golang.org/grpc => google.golang.org/grpc v1.38.0
	k8s.io/apiserver => github.com/leoryu/k8s-apiserver v0.22.4-0.20211110063743-0341ac1e5801
	k8s.io/client-go => k8s.io/client-go v0.22.3
)

For the full story, head over to the developer's documentation.

Community

Licensing

TKEStack is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

More Repositories

1

gpu-manager

Go
823
star
2

kvass

Kvass is a Prometheus horizontal auto-scaling solution , which uses Sidecar to generate special config file only containes part of targets assigned from Coordinator for every Prometheus shard.
Go
614
star
3

kstone

Kstone is an etcd management platform, providing cluster management, monitoring, backup, inspection, data migration, visual viewing of etcd data, and intelligent diagnosis.
Go
526
star
4

vcuda-controller

C
494
star
5

gpu-admission

Go
128
star
6

tapp

Another great app kind for Kubernetes!
Go
113
star
7

galaxy

Providing high-performance network for Kubernetes
Go
109
star
8

image-transfer

Go
74
star
9

cron-hpa

Cron Horizontal Pod Autoscaler(CronHPA)
Go
60
star
10

lb-controlling-framework

A controller that helps you manipulate arbitrary load balancers
Go
56
star
11

charts

Mustache
40
star
12

docs

https://tkestack.github.io/docs/
37
star
13

go-nvml

Go
31
star
14

kube-jarvis

Go
28
star
15

tke-k8s-distro

Repository of Tencent TKE Kubernetes Distribution
Shell
28
star
16

yarn-opterator

An kubernetes opterator to manager the yarn nodemanager, which can be used to deploy yarn on kubernetes.
Go
22
star
17

volume-decorator

Go
14
star
18

csi-operator

Go
14
star
19

kstone-dashboard

Kstone Dashboard is a web-based UI for managing Kstone. It can help users to manage etcd based kstone and enjoy monitoring, inspection, visualization, backup and other features.
TypeScript
14
star
20

kstone-etcd-operator

kstone-etcd-operator is a subproject of etcd cluster management platform kstone. It's inspired by etcd-operator. And has more complete support for persistent storage and better disaster tolerance.
Go
11
star
21

toc

7
star
22

knitnet-operator

Operator for support direct networking between Pods and Services in different Kubernetes clusters
Go
7
star
23

gpu-exporter

C
5
star
24

ronqir

CRI runtime in Rust
5
star
25

gc-controller

Go
4
star
26

kube-event-watcher

Go
4
star
27

aia-ip-controller

Aia-ip-controller is a Kubernetes application, which make it possible for Tencent Kubernetes Engine(TKE) customers to leverage Tencent Cloud's AIa Service to accelerate network with global coverage.
Go
4
star
28

tke-extend-network-controller

A Network Controller for TKE
Go
3
star
29

web

TKEStack website
HTML
1
star