Skip to content
/ tke Public
forked from tkestack/tke

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

License

Notifications You must be signed in to change notification settings

CrescentP/tke

 
 

Repository files navigation

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.7.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 https://【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 https://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.

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, the go get will be failed as below, please add replace section to your go.mod to fix it

go: tkestack.io/tke upgrade => v1.5.1
go get: tkestack.io/[email protected] requires
        github.com/chartmuseum/[email protected] requires
        github.com/NetEase-Object-Storage/[email protected]: invalid version: unknown revision 000000000000
replace (
	github.com/chartmuseum/storage => github.com/choujimmy/storage v0.0.0-20200507092433-6aea2df34764
)

If you refer to this repo and get run failed messages as below, it's caused by the etcd issue #11931, just replace the grpc version to v1.26.0 in the go.mod to fix it

# go.etcd.io/etcd/clientv3/balancer/resolver/endpoint
../../../../../../go/pkg/mod/go.etcd.io/[email protected]/clientv3/balancer/resolver/endpoint/endpoint.go:114:78: undefined: resolver.BuildOption
../../../../../../go/pkg/mod/go.etcd.io/[email protected]/clientv3/balancer/resolver/endpoint/endpoint.go:182:31: undefined: resolver.ResolveNowOption
# go.etcd.io/etcd/clientv3/balancer/picker
../../../../../../go/pkg/mod/go.etcd.io/[email protected]/clientv3/balancer/picker/err.go:37:44: undefined: balancer.PickOptions
../../../../../../go/pkg/mod/go.etcd.io/[email protected]/clientv3/balancer/picker/roundrobin_balanced.go:55:54: undefined: balancer.PickOptions
replace (
	google.golang.org/grpc => google.golang.org/grpc v1.26.0
)

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.

About

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

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 39.0%
  • TypeScript 27.8%
  • JavaScript 15.1%
  • HTML 14.9%
  • CSS 2.6%
  • Shell 0.3%
  • Other 0.3%