Awesome
<h3 align="center"> <img src="https://github.com/linode/manager/blob/develop/packages/manager/src/assets/logo/akamai-logo-color.svg" width="200" /> <br /> <br /> Application Platform for Linode Kubernetes Engine </h3> <p align="center"> <a href="https://github.com/linode/apl-core/releases/"><img alt="Releases" src="https://img.shields.io/github/release-date/linode/apl-core?label=latest%20release" /></a> <a href="https://img.shields.io/github//linode/apl-core/actions/workflows/main.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/linode/apl-core/main.yml" /></a> <a href="https://img.shields.io/github/last-commit/linode/apl-core"><img alt="Last commit" src="https://img.shields.io/github/last-commit/linode/apl-core" /></a> <a href="https://img.shields.io/crates/l/ap"><img alt="License" src="https://img.shields.io/crates/l/ap" /></a> </p> <p align="center"> <a href="https://img.shields.io/badge/contributions-welcome-orange.svg"><img alt="Contributions" src="https://img.shields.io/badge/contributions-welcome-orange.svg" /></a> <a href="https://apl-docs.net/"><img src="https://img.shields.io/website-up-down-green-red/http/shields.io.svg" alt="Website apl-docs.net"></a> </p> <p align="center"><img src="https://github.com/linode/apl-core/blob/main/docs/img/apl-console.png/?raw=true" width="100%" align="center" alt="APL Console"></p>Getting started
Helm
To install Application Platform for LKE, make sure to have a Kubernetes cluster running with at least:
- Version
1.28
,1.29
or1.30
- A node pool with 8 vCPU and 24GB RAM
- Calico CNI installed (or any other CNI that supports K8s network policies)
- A default storage class configured
- When using the
custom
provider, make sure the K8s LoadBalancer Service created by APL can obtain an external IP (using a cloud load balancer or MetalLB)
[TIP]
Install APL with DNS to unlock it's full potential. Check here for more information.
Add the Helm repository:
helm repo add apl https://linode.github.io/apl-core/
helm repo update
and then install the Helm chart:
helm install apl apl/apl \
--set cluster.name=$CLUSTERNAME \
--set cluster.provider=$PROVIDER # use 'linode' for LKE or 'custom' for any other cloud/infrastructure
When the installer job is completed, follow the post installation steps.
Integrations
Core Applications
Get instant access to the following pre-configured Kubernetes Apps:
- Istio: The service mesh framework with end-to-end transit encryption
- Argo CD: Declarative Continuous Deployment
- Keycloak: Identity and access management for modern applications and services
- Cert Manager - Bring your own wildcard certificate or request one from Let's Encrypt
- Nginx Ingress Controller: Ingress controller for Kubernetes
- External DNS: Synchronize exposed ingresses with DNS providers
- Tekton Pipeline: K8s-style resources for declaring CI/CD pipelines
- Tekton Triggers: Trigger pipelines from event payloads
- Tekton dashboard: Web-based UI for Tekton Pipelines and Tekton Triggers
- Gitea: Self-hosted Git service
- Cloudnative-pg: Open source operator designed to manage PostgreSQL workloads
- Sealed Secrets: Encrypt your Secret into a SealedSecret, which is safe to store - even inside a public repository
Optional Applications
One-click activation of the following Kubernetes Apps:
- Velero: Back up and restore your Kubernetes cluster resources and persistent volumes
- Knative: Deploy and manage serverless workloads
- Prometheus: Collecting container application metrics
- Grafana: Visualize metrics, logs, and traces from multiple sources
- Grafana Loki: Collecting container application logs
- Harbor: Container image registry with role-based access control and image scanning
- Kyverno: Kubernetes native policy management
- Jaeger: End-to-end distributed tracing and monitor for complex distributed systems
- Kiali: Observe Istio service mesh relations and connections
- Minio: High performance Object Storage compatible with Amazon S3 cloud storage service
- Trivy: Kubernetes-native security toolkit
- Falco: Cloud Native Runtime Security
- Grafana Tempo: High-scale distributed tracing backend
- OpenTelemetry: Instrument, generate, collect, and export telemetry data to help you analyze your software’s performance and behavior
Documentation
Check out apl-docs.net for more detailed documentation.
License
APL is licensed under the Apache 2.0 License.