-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add Rancher Turtles integration instructions * Reference Tumbleweed * Wrap up * Document Elemental API
- Loading branch information
1 parent
c5850ad
commit cbb2f06
Showing
23 changed files
with
4,168 additions
and
740 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,39 @@ | ||
# cluster-api-provider-elemental | ||
The Elemental CAPI infrastructure provider | ||
# Elemental CAPI Infrastructure Provider | ||
|
||
This infrastructure provider brings the Elemental stack into the [Kubernete's Cluster API](cluster-api.sigs.k8s.io/). | ||
|
||
Elemental is a software stack enabling centralized, full cloud-native OS management with Kubernetes. | ||
For more information about the current features, please read the [official documentation](https://elemental.docs.rancher.com/). | ||
|
||
## State of the project | ||
|
||
This project is an early prototype. | ||
It will eventually support all the features of the current [elemental-operator](https://github.com/rancher/elemental-operator). | ||
However, backward compatibility is not guaranteed at the moment. | ||
|
||
## Overview | ||
|
||
![capi overview](doc/images/capi-overview.png) | ||
|
||
## Managed Bare Metal hosts | ||
|
||
Elemental consists of two main components that can be installed on any host machine: | ||
|
||
- [elemental-agent](cmd/agent/README.md) communicates with the Elemental API for OS inventory management and CAPI bootstrapping. | ||
- [elemental-toolkit](https://github.com/rancher/elemental-toolkit) builds, ship and maintain cloud-init driven Linux derivatives. | ||
|
||
![elemental host anatomy](doc/images/elemental-host-anatomy.png) | ||
|
||
## Elemental API | ||
|
||
The Elemental API is a RESTful HTTP API than enables inventory management and CAPI bootstrapping capabilities. | ||
The specifications are published in [OpenAPI format](elemental-openapi.yaml). | ||
You can use it with any OpenAPI compliant tool, for example the online [Swagger Editor](https://editor.swagger.io/). | ||
|
||
This API is consumed by the `elemental-agent` and is meant for **Internal** use only. | ||
|
||
## Rancher Integration | ||
|
||
[Rancher Turtles](https://docs.rancher-turtles.com/) is an extension to Rancher that brings increased integration with Cluster API. | ||
|
||
For more information on how to deploy an Elemental CAPI cluster and import it into Rancher, please read the related [documentation](doc/RANCHER.md). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# Elemental CAPI Agent | ||
|
||
## Usage | ||
|
||
```bash | ||
elemental-agent | ||
``` | ||
|
||
## Config | ||
|
||
By default the agent will look for a configuration in: `/oem/elemental/agent/config.yaml` | ||
|
||
```yaml | ||
registration: | ||
# This is the ElementalRegistration URI. | ||
uri: https://my.elemental.api.endpoint/elemental/v1/namespaces/default/registrations/my-registration | ||
# The CA certificate to trust, if any | ||
caCert: | | ||
-----BEGIN CERTIFICATE----- | ||
MIIBvjCCAWOgAwIBAgIBADAKBggqhkjOPQQDAjBGMRwwGgYDVQQKExNkeW5hbWlj | ||
bGlzdGVuZXItb3JnMSYwJAYDVQQDDB1keW5hbWljbGlzdGVuZXItY2FAMTY5NTMw | ||
MjQ0MjAeFw0yMzA5MjExMzIwNDJaFw0zMzA5MTgxMzIwNDJaMEYxHDAaBgNVBAoT | ||
E2R5bmFtaWNsaXN0ZW5lci1vcmcxJjAkBgNVBAMMHWR5bmFtaWNsaXN0ZW5lci1j | ||
YUAxNjk1MzAyNDQyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7BzWmM5CljI0 | ||
T5qH13xC4ukIkuaU6sn35B39AWIryvNpzB3Dx1Y0QUnFnktEMwln084OvZ1anO7Z | ||
zNi7DO4M7KNCMEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYD | ||
VR0OBBYEFISgAh7vrCcMxKZKEikNpWbj20mKMAoGCCqGSM49BAMCA0kAMEYCIQD1 | ||
WhfJrSPzvfWPO73w0MFMBRXZ74Tc24SN6QPBin5LaAIhAM9hidFQ71SZQnPY3Y1I | ||
JZPkAoVeIOoFDgXvl9MkHBuk | ||
-----END CERTIFICATE----- | ||
agent: | ||
# Enable agent debug logs | ||
debug: false | ||
# The period used by the agent to sync with the Elemental API | ||
reconciliation: 1m | ||
# Skip TLS verification when communicating with the Elemental API | ||
insecureSkipTLSVerify: false | ||
# Use the system's cert pool for TLS verification | ||
useSystemCertPool: false | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.