tce

module
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 1, 2021 License: Apache-2.0

README

Tanzu Community Edition

Tanzu Community Edition logo

⚠️ Tanzu Community Edition has not been announced; it is currently a VMware internal project. ⚠️

Overview

Tanzu Community Edition (TCE) enables the creation of application platforms. Application platforms are infrastructure, tooling, and services that foster a viable location to run applications and enable positive developer experiences.

TCE does this by leveraging Cluster API to provide declarative deployment and management of Kubernetes clusters. Kubernetes acts as the foundation in which we orchestrate workloads. With this foundation in place, TCE enables the installation of platform packages that support applications running in clusters.

TCE allows you to get bootstrapped by providing a set of opinionated building blocks. Additionally, it enables you to add or replace these with your own components. This flexibility enables you to produce application platforms that meet your unique requirements without having to start from scratch.

Getting Started

  • Getting Started Guides
    • Password: ExpectedBirthdayIndirectBinary
    • Select a getting started guide based on your provider.

Architectures / Designs

To support our talk, then code approach, all implementation (both completed and intended) is captured in the following.

Packages

Packages provide the additional functionality necessary to build an application platform atop Kubernetes. We follow a modular approach in which operators building a platform can deploy the packages they need to fulfill their requirements.

Name Description Documentation
Cert Manager Provides certificate management provisioning within the cluster Cert Manager pacakge docs
Contour Provides ingress support to workloads Contour package docs
Contour-Operator Provides an operator for Contour, an ingress controller Contour Operator package docs
ExternalDNS Provides discoverability of services via public DNS ExternalDNS package docs
Harbor Provides cloud native container registry service Harbor package docs
Fluent-Bit Log processor and forwarder Fluent Bit package docs
Gatekeeper Provides policy enforcement within clusters Gatekeeper package docs
Grafana Metrics visualization and analytics Grafana package docs
Knative Serving Provides serving functionality to clusters knative serving package docs
Prometheus Time series database for metrics. Includes AlertManager Prometheus package docs
Velero Provides disaster recovery capabilities Velero package docs
Multus CNI Provides ability for attaching multiple network interfaces to pods in Kubernetes Multus CNI package docs

Here's a demonstration of working with packages. Tanzu Community Edition CLI in Action

Repository Layout

The following describes the key directories that make up this repository.

  • addons/: our packages and package repos installed in TCE clusters.
    • packages/: software packages installed in TCE clusters.
    • repos/: bundles of packages that can be installed in TCE clusters making all packages within available.
  • cli/: plugins that add TCE-specific functionality to the tanzu CLI
    • cmd/plugin/${PLUGIN_NAME}/: main file for each plugin, containing the plugin descriptor and plugin creation.
    • pkg/addon/${PLUGIN_NAME}/: commands and logic for a plugins command(s), implemented with cobra.
    • pkg/addon/common/: shared functionality amongst plugins.
  • docs/: documentation and our hugo-based website
  • hack/: scripts used for development and build processes

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL