mirror of https://github.com/crossplane/docs.git
docs snapshot for crossplane version `master`
This commit is contained in:
parent
d94e3fddbf
commit
399a9314e4
|
@ -2,8 +2,8 @@
|
|||
|
||||
Crossplane is an open source multicloud control plane to manage your
|
||||
cloud-native applications and infrastructure across environments, clusters,
|
||||
regions and clouds. It enables provisioning and full-lifecycle management
|
||||
of applications and managed services from your choice of cloud using `kubectl`.
|
||||
regions and clouds. It enables provisioning and full-lifecycle management of
|
||||
applications and managed services from your choice of cloud using `kubectl`.
|
||||
|
||||
Crossplane can be installed into an existing Kubernetes cluster to add managed
|
||||
service provisioning or deployed as a dedicated control plane for multi-cluster
|
||||
|
@ -11,12 +11,13 @@ management and workload scheduling.
|
|||
|
||||
Crossplane enables the community to build and publish Stacks to add more clouds
|
||||
and cloud services to Crossplane with support for out-of-tree extensibility and
|
||||
independent release schedules. Crossplane includes Stacks for [GCP][stack-gcp],
|
||||
independent release schedules. Crossplane includes Stacks for [GCP][stack-gcp],
|
||||
[AWS][stack-aws], and [Azure][stack-azure] today.
|
||||
|
||||
<h4 align="center"><img src="media/crossplane-overview.png" alt="Crossplane"></h4>
|
||||
|
||||
Crossplane has four main feature areas that can be used independently:
|
||||
|
||||
1. Crossplane Services - provision managed services from kubectl.
|
||||
1. Crossplane Stacks - extend Crossplane with new functionality.
|
||||
1. Crossplane Workloads - define complete applications and schedule across
|
||||
|
@ -24,115 +25,116 @@ Crossplane has four main feature areas that can be used independently:
|
|||
1. Crossplane Clusters - manage multiple Kubernetes clusters from a single
|
||||
control plane.
|
||||
|
||||
## Crossplane Services
|
||||
Crossplane Services supports managed service provisioning
|
||||
using `kubectl`. It applies the Kubernetes pattern for Persistent Volume (PV)
|
||||
claims and classes to managed service provisioning with support for a strong
|
||||
separation of concern between app teams and cluster administrators.
|
||||
## Crossplane Services
|
||||
|
||||
Crossplane Services supports managed service provisioning using `kubectl`. It
|
||||
applies the Kubernetes pattern for Persistent Volume (PV) claims and classes to
|
||||
managed service provisioning with support for a strong separation of concern
|
||||
between app teams and cluster administrators.
|
||||
|
||||
App teams can choose between cloud-specific and portable services including
|
||||
managed databases, message queues, buckets, data pipelines, and more to define
|
||||
complete applications, build once, and deploy into multiple clouds using
|
||||
continuous delivery pipelines or GitOps flows.
|
||||
continuous delivery pipelines or GitOps flows.
|
||||
|
||||
Cluster administrators can define self-service policies and best-practice
|
||||
configurations to accelerate app delivery and improve security, so app teams can
|
||||
focus on delivering their app instead of cloud-specific infrastructure details.
|
||||
|
||||
The [Crossplane Services Guide][services-user-guide] explores related concepts and
|
||||
shows how to use Crossplane Services to deploy a Wordpress instance that
|
||||
securely consumes a managed `MySQLInstance` from GCP, AWS, or Azure from
|
||||
`kubectl`.
|
||||
Take a look at the [getting started guide][getting-started] for an introduction
|
||||
to Crossplane Services. The [Crossplane Services Guide][services-user-guide]
|
||||
also explores related concepts and shows how to use Crossplane Services to
|
||||
deploy a Wordpress instance that securely consumes a managed `MySQLInstance`
|
||||
from GCP, AWS, or Azure using `kubectl`.
|
||||
|
||||
## Crossplane Stacks
|
||||
Stacks extend Crossplane with new functionality and can be
|
||||
installed using the [Stack
|
||||
Manager][stacks-manager]
|
||||
via the [Kubernetes
|
||||
API][stack-install-docs]
|
||||
or with the [crossplane kubectl
|
||||
plugin][crossplane-cli] [`stack install`][crossplane-cli-usage] command.
|
||||
|
||||
Stacks extend Crossplane with new functionality and can be installed using the
|
||||
[Stack Manager][stacks-manager] via the [Kubernetes API][stack-install-docs] or
|
||||
with the [crossplane kubectl plugin][crossplane-cli] [`stack
|
||||
install`][crossplane-cli-usage] command.
|
||||
|
||||
Crossplane is built on the Kubernetes API machinery as a platform, and Stacks
|
||||
simplify extending the Kubernetes API to provision and lifecycle manage apps and
|
||||
the managed service infrastructure they depend on, including [Stack security and
|
||||
isolation][stack-security-design].
|
||||
|
||||
The [Crossplane Stacks Guide][stack-user-guide] shows how to deploy a portable [Wordpress Stack][stack-wordpress-registry]
|
||||
into multiple clouds using Infra Stacks including
|
||||
[stack-gcp][stack-gcp], [stack-aws][stack-aws], and [stack-azure][stack-azure].
|
||||
The [Crossplane Stacks Guide][stack-user-guide] shows how to deploy a portable
|
||||
[Wordpress Stack][stack-wordpress-registry] into multiple clouds using Infra
|
||||
Stacks including [stack-gcp][stack-gcp], [stack-aws][stack-aws], and
|
||||
[stack-azure][stack-azure].
|
||||
|
||||
### Infrastructure Stacks
|
||||
Infra Stacks like [stack-gcp][stack-gcp], [stack-aws][stack-aws], and [stack-azure][stack-azure]
|
||||
extend the Kubernetes API to support managed service provisioning (DBaaS, cache, buckets), secure
|
||||
connectivity (VPCs, subnets, peering, ACLs, secrets), and provisioning managed
|
||||
Kubernetes clusters on demand to further isolate the blast radius of applications.
|
||||
### Infrastructure Stacks
|
||||
|
||||
Infra Stacks like [stack-gcp][stack-gcp], [stack-aws][stack-aws], and
|
||||
[stack-azure][stack-azure] extend the Kubernetes API to support managed service
|
||||
provisioning (DBaaS, cache, buckets), secure connectivity (VPCs, subnets,
|
||||
peering, ACLs, secrets), and provisioning managed Kubernetes clusters on demand
|
||||
to further isolate the blast radius of applications.
|
||||
|
||||
Infra Stacks are pre-built and published to the [Stacks
|
||||
registry][stack-registry] where they can
|
||||
be installed by a Cluster Admin using a
|
||||
[`ClusterStackInstall`][stack-install-docs]
|
||||
Kubernetes API kind or with the [`stack
|
||||
install`][crossplane-cli-usage] command that
|
||||
installs a Stacks with permissions to watch resources at a cluster level, across
|
||||
all namespaces.
|
||||
registry][stack-registry] where they can be installed by a Cluster Admin using a
|
||||
[`ClusterStackInstall`][stack-install-docs] Kubernetes API kind or with the
|
||||
[`stack install`][crossplane-cli-usage] command that installs a Stack with
|
||||
permissions to watch resources at a cluster level, across all namespaces.
|
||||
|
||||
Infra Stacks are covered in both the [Crossplane Services
|
||||
Guide][services-user-guide] and the
|
||||
[Crossplane Stacks Guide][stack-user-guide].
|
||||
Guide][services-user-guide] and the [Crossplane Stacks Guide][stack-user-guide].
|
||||
|
||||
### Application Stacks
|
||||
App Stacks depend on Infra Stacks like
|
||||
[stack-gcp][stack-gcp], [stack-aws][stack-aws], and [stack-azure][stack-azure]
|
||||
to provide managed services via the Kubernetes API.
|
||||
### Application Stacks
|
||||
|
||||
App Stacks are pre-built and published to the [Stacks
|
||||
registry][stack-registry] where they can
|
||||
be installed by an app team using a
|
||||
[`StackInstall`][stack-install-docs]
|
||||
Kubernetes API kind or with the [`stack
|
||||
install`][crossplane-cli-usage] command that
|
||||
installs Stacks with permissions only within a single namespace.
|
||||
App Stacks depend on Infra Stacks like [stack-gcp][stack-gcp],
|
||||
[stack-aws][stack-aws], and [stack-azure][stack-azure] to provide managed
|
||||
services via the Kubernetes API.
|
||||
|
||||
The [Crossplane Stacks Guide][stack-user-guide] covers how to deploy a portable
|
||||
App Stacks are pre-built and published to the [Stacks registry][stack-registry]
|
||||
where they can be installed by an app team using a
|
||||
[`StackInstall`][stack-install-docs] Kubernetes API kind or with the [`stack
|
||||
install`][crossplane-cli-usage] command that installs Stacks with permissions
|
||||
only within a single namespace.
|
||||
|
||||
The [Crossplane Stacks Guide][stack-user-guide] covers how to deploy a portable
|
||||
[Wordpress Stack][stack-wordpress] into multiple clouds using Infra Stacks such
|
||||
as [stack-gcp][stack-gcp], [stack-aws][stack-aws], and [stack-azure][stack-azure].
|
||||
as [stack-gcp][stack-gcp], [stack-aws][stack-aws], and
|
||||
[stack-azure][stack-azure].
|
||||
|
||||
### Build your own Stack
|
||||
The [Crossplane Developer Guide][stack-developer-guide] shows how to
|
||||
build and extend Infra Stacks and App Stacks.
|
||||
### Build your own Stack
|
||||
|
||||
## Crossplane Workloads
|
||||
Crossplane includes an extensible workload scheduler that observes application
|
||||
policies to select a suitable target cluster from a pool of available clusters.
|
||||
The workload scheduler can be customized to consider a number of criteria including
|
||||
capabilities, availability, reliability, cost, regions, and performance while
|
||||
deploying workloads and their resources.
|
||||
The [Crossplane Developer Guide][stack-developer-guide] shows how to build and
|
||||
extend Infra Stacks and App Stacks.
|
||||
|
||||
Complex workloads can be modeled as a
|
||||
[`KubernetesApplication`][k8s-app-design]
|
||||
## Crossplane Workloads
|
||||
|
||||
Crossplane includes an extensible workload scheduler that observes application
|
||||
policies to select a suitable target cluster from a pool of available clusters.
|
||||
The workload scheduler can be customized to consider a number of criteria
|
||||
including capabilities, availability, reliability, cost, regions, and
|
||||
performance while deploying workloads and their resources.
|
||||
|
||||
Complex workloads can be modelled as a [`KubernetesApplication`][k8s-app-design]
|
||||
resource as done by the portable [Wordpress Stack][stack-wordpress] which
|
||||
automates the lifecycle of a
|
||||
[`KubernetesApplication`][k8s-app-design]
|
||||
including provisioning and secure connectivity to a managed `MySQLInstance`.
|
||||
automates the lifecycle of a [`KubernetesApplication`][k8s-app-design] including
|
||||
provisioning and secure connectivity to a managed `MySQLInstance`.
|
||||
|
||||
## Crossplane Clusters
|
||||
Crossplane supports dynamic provisioning of managed
|
||||
Kubernetes clusters from a single control plane with consistent multi-cluster
|
||||
best-practice configuration and secure connectivity between target Kubernetes
|
||||
clusters and the managed services provisioned for applications. Managed
|
||||
Kubernetes clusters can be dynamically provisioned with a `KubernetesCluster`
|
||||
resource as done by the portable [Wordpress Stack][stack-wordpress] which
|
||||
automates the lifecycle of a `KubernetesCluster`.
|
||||
## Crossplane Clusters
|
||||
|
||||
Crossplane supports dynamic provisioning of managed Kubernetes clusters from a
|
||||
single control plane with consistent multi-cluster best-practice configuration
|
||||
and secure connectivity between target Kubernetes clusters and the managed
|
||||
services provisioned for applications. Managed Kubernetes clusters can be
|
||||
dynamically provisioned with a `KubernetesCluster` resource as done by the
|
||||
portable [Wordpress Stack][stack-wordpress] which automates the lifecycle of a
|
||||
`KubernetesCluster`.
|
||||
|
||||
## Architecture and Vision
|
||||
|
||||
The full architecture and vision of the Crossplane project is described in depth
|
||||
in the [architecture document][arch-doc].
|
||||
It is the best place to learn more about how Crossplane fits into the Kubernetes
|
||||
ecosystem, the intended use cases, and comparisons to existing projects.
|
||||
in the [architecture document][arch-doc]. It is the best place to learn more
|
||||
about how Crossplane fits into the Kubernetes ecosystem, the intended use cases,
|
||||
and comparisons to existing projects.
|
||||
|
||||
## Learn More
|
||||
|
||||
If you have any questions, please drop us a note on [Crossplane Slack][join-crossplane-slack] or [contact us][contact-us]!
|
||||
|
||||
* [Quick Start Guide](quick-start.md)
|
||||
|
@ -148,6 +150,7 @@ If you have any questions, please drop us a note on [Crossplane Slack][join-cros
|
|||
* [Learn More][learn-more]
|
||||
|
||||
<!-- Named links -->
|
||||
[getting-started]: quick-start.md
|
||||
[services-user-guide]: services-guide.md
|
||||
[stack-user-guide]: stacks-guide.md
|
||||
[stack-developer-guide]: developer-guide.md
|
||||
|
@ -172,4 +175,3 @@ If you have any questions, please drop us a note on [Crossplane Slack][join-cros
|
|||
[contact-us]: https://github.com/crossplaneio/crossplane#contact
|
||||
[join-crossplane-slack]: https://slack.crossplane.io
|
||||
[learn-more]: learn-more.md
|
||||
|
||||
|
|
|
@ -51,10 +51,10 @@ Save the above as `stack.yaml`, and apply it by running:
|
|||
kubectl apply -f stack.yaml
|
||||
```
|
||||
|
||||
We've now installed Crossplane with GCP support! Take a look at the guide to
|
||||
[Crossplane installation guide] for more installation options, and to learn how
|
||||
to install support for other cloud providers such as Amazon Web Services and
|
||||
Microsoft Azure.
|
||||
We've now installed Crossplane with GCP support! Take a look at the [Crossplane
|
||||
installation guide] for more installation options, and to learn how to install
|
||||
support for other cloud providers such as Amazon Web Services and Microsoft
|
||||
Azure.
|
||||
|
||||
## Add Your GCP Project to Crossplane
|
||||
|
||||
|
|
Loading…
Reference in New Issue