Skip to content

Commit

Permalink
Merge pull request #54 from hivelocity/tg/docs
Browse files Browse the repository at this point in the history
📖 Docs
  • Loading branch information
guettli authored Jun 14, 2023
2 parents 247026c + 07c5aed commit 64752a1
Show file tree
Hide file tree
Showing 2 changed files with 80 additions and 40 deletions.
77 changes: 37 additions & 40 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,38 @@

# Kubernetes Cluster API Provider Hivelocity

> :warning: This project is in the development stage. DO NOT USE IN PRODUCTION! :warning:
The Hivelocity Provider is a Kubernetes-native tool that allows you to easily create and manage declarative infrastructure for your Kubernetes clusters on Hivelocity's infrastructure. It offers options for high availability on instant bare metal or custom dedicated setups and simplifies the process of creating, updating, and operating production-ready clusters.
The Hivelocity Provider is a Kubernetes-native tool that allows you to manage Kubernetes clusters on Hivelocity's infrastructure.

It offers options for high availability with instant bare metal and simplifies the process of creating, updating, and operating production-ready clusters.

You can find more information about Hivelocity and their infrastructure at https://www.hivelocity.net/.


> If you have questions or are interested in running production-ready Kubernetes clusters on Hivelocity, then please contact us [Hivelocity](https://www.hivelocity.net/about/contact-us/).
## :newspaper: What is the Cluster API Provider Hivelocity?

If you have questions regarding running (production-ready) clusters with CAPHV, then ask [Syself](https://syself.com/).
[Cluster API](https://cluster-api.sigs.k8s.io/) is an operator that manages infrastructure similarly to how Kubernetes manages containers. It uses a declarative API and includes controllers that ensure the desired state of the infrastructure is maintained. This approach, referred to as Infrastructure as Software, allows for more automatic reactions to changes and problems compared to Infrastructure as Code solutions.

## :newspaper: What is the Cluster API Provider Hivelocity?
The Cluster API is an operator that manages infrastructure in a similar way to how Kubernetes manages containers. It uses a declarative API and includes controllers that ensure the desired state of the infrastructure is maintained. This approach, called Infrastructure as Software, allows for more automatic reactions to changes and problems compared to Infrastructure as Code solutions.
The Cluster API Provider Hivelocity (CAPHV) is the infrastructure component of the Cluster API stack. It enables the use of the Cluster API on Hivelocity's infrastructure, facilitating the creation of stable and highly available Kubernetes clusters. This allows organizations to benefit from the advantages of declarative infrastructure and cost-effectiveness on a global scale. The Hivelocity Provider enables the creation of stable and highly available Kubernetes clusters on certified HIPAA, PCI, ISAE-3402, SSAE 16 SOC1, and SOC2 infrastructure around the globe.

The Hivelocity Provider is the infrastructure component of the Cluster API stack that allows the Cluster API to be used on Hivelocity's infrastructure. It enables the creation of stable and highly available Kubernetes clusters, allowing organizations to benefit from the advantages of declarative infrastructure and cost-effectiveness on a global scale. The Hivelocity Provider allows for the creation of stable and highly available Kubernetes clusters on certified HIPAA, PCI, ISAE-3402, SSAE 16 SOC1, and SOC2 infrastructure around the globe.
With the Cluster API Provider Hivelocity, you can trust that your infrastructure is in good hands with a provider that has a track record of dynamic performance, static pricing, and a global presence.

With the Hivelocity Provider, you can trust that your infrastructure is in good hands with a provider that has a track record of dynamic performance, static pricing, and a global presence.
## :telephone_receiver: Support

---
## :book: Documentation
If you want to manage Kubernetes yourself, please contact [Hivelocity](https://www.hivelocity.net/about/contact-us/) to set up your infrastructure.

Please see our [book](https://hivelocity.github.io/cluster-api-provider-hivelocity) for in-depth documentation.
If you have questions regarding running (production-ready) clusters with CAPHV, then ask [Syself](https://syself.com/).

## :sparkles: Features

* Native Kubernetes manifests and API
* Manages the bootstrapping of Networking and devices.
* Manages the bootstrapping of networking and devices
* Choice of Linux distribution
* Support for single and multi-node control plane clusters (HA Kubernetes)
* Doesn't use SSH for bootstrapping nodes.
* Day 2 operations including: updating Kubernetes and nodes, scaling, and self-healing
* Custom CSR approver for approving kubelet-serving certificate signing requests
* Does not use SSH for bootstrapping nodes
* Day 2 operations including updating Kubernetes and nodes, scaling, and self-healing
* Custom CSR approver for approving kubelet-serving certificate signing requests (coming soon)
* Support for both Hivelocity instant bare metal and custom dedicated setups


Expand All @@ -45,28 +46,27 @@ Please see: https://hivelocity.github.io/cluster-api-provider-hivelocity/referen

**NOTE:** As the versioning for this project is tied to the versioning of Cluster API, future modifications to this policy may be made to more closely align with other providers in the Cluster API ecosystem.

---
## :book: Documentation

Please see our [book](https://hivelocity.github.io/cluster-api-provider-hivelocity) for in-depth documentation.

## :question: Questions?

* If you have a question related to hardware: [Hivelocity](https://www.hivelocity.net/about/contact-us/)
* If you have a question related to the Cluster API Provider Hivelocity: [Github Discussions](https://github.com/hivelocity/cluster-api-provider-hivelocity/discussions)
* If you need commercial support for Cluster API Provider Hivelocity: [Syself](https://syself.com)

## :busts_in_silhouette: Getting Involved and Contributing

Are you interested in contributing to Cluster API Provider Hivelocity? We, the
maintainers and community, would love your suggestions, contributions, and help!
If you want to learn more about how to get involved, you can contact the maintainers at any time.
Are you interested in contributing to Cluster API Provider Hivelocity? We, the maintainers and community, would love your suggestions, contributions, and help! If you want to learn more about how to get involved, you can contact the maintainers at any time.

To set up your environment, try out the development guide.
To set up your environment, check out the development guide.

In the interest of getting more new people involved, we tag issues with
[`good first issue`][good_first_issue].
These are typically issues that have a smaller scope, but are good to get acquainted with the codebase.
In the interest of getting more new people involved, we tag issues with [`good first issue`][good_first_issue]. These are typically issues that have a smaller scope but are a good way to get acquainted with the codebase.

We also encourage ALL active community participants to act as if they are
maintainers, even if you don't have "official" write permissions. This is a
community effort, we are here to serve the Kubernetes community. If you have an
active interest and you want to get involved, you have real power! Don't assume
that the only people who can get things done around here are the "maintainers".
We also encourage ALL active community participants to act as if they are maintainers, even if you don't have "official" write permissions. This is a community effort, and we are here to serve the Kubernetes community. If you have an active interest and you want to get involved, you have real power! Don't assume that the only people who can get things done around here are the "maintainers".

We would also love to add more "official" maintainers, so show us what you can
do!
We would also love to add more "official" maintainers, so show us what you can do!

## :dizzy: Code of Conduct

Expand All @@ -76,27 +76,24 @@ Participation in the Kubernetes community is governed by the [Kubernetes Code of

### :bug: Bugs

If you think you have found a bug, please follow these steps:
If you think you have found a bug, please follow these steps. Even if it just a small
typo in the docs, please tell us how we can improve the project!

- Take some time to give due diligence to the issue tracker. Your issue might be a duplicate.
- Get the logs from the cluster controllers. Paste this into your issue.
- Take some time to do due diligence in the issue tracker. Your issue might be a duplicate.
- Get the logs from the cluster controllers and paste them into your issue.
- Open a [bug report][bug_report].
- Give it a meaningful title to help others who might be searching for your issue in the future.
- If you have questions, reach out to the Cluster API community on the [Kubernetes Slack channel][slack_info].

### :star: Tracking New Features

We also use the issue tracker to track features. If you have an idea for a feature or think that you can help Cluster API Provider Hivelocity become even more awesome, then follow these steps:
We also use the issue tracker to track features. If you have an idea for a feature, or think that you can help Cluster API Provider Hivelocity become even more awesome, then follow these steps:

- Open a [feature request][feature_request].
- Give it a meaningful title to help others who might be searching for your issue in the future.
- Define clearly the use case. Use concrete examples, e.g. "I type `this` and
Cluster API Provider Hivelocity does `that`".
- Some of our larger features will require some design. If you would like to
include a technical design for your feature, please include it in the issue.
- After the new feature is well understood and the design is agreed upon, we can
start coding the feature. We would love if you code it. So please open
up a **WIP** *(work in progress)* pull request. Happy coding!
- Clearly define the use case. Use concrete examples, e.g. "I type `this` and Cluster API Provider Hivelocity does `that`".
- Some of our larger features will require some design. If you would like to include a technical design for your feature, please include it in the issue.
- After the new feature is well understood and the design is agreed upon, we can start coding the feature. We would love it if you could code it. So please open up a **WIP** *(work in progress)* pull request. Happy coding!

<!-- References -->

Expand Down
43 changes: 43 additions & 0 deletions docs/book/src/user/getting-started.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,48 @@
# Getting Started

## Terminology

Before we begin we need to answer some questions.

## What is Hivelocity?

Hivelocity provides Dedicated Servers, Colocation and Cloud Hosting services to customers from over 130 countries since 2002. Hivelocity operates over 70,000 sq ft of data center space offering services in Tampa FL, Miami FL, Atlanta GA, New York NY, and Los Angeles CA. Each of Hivelocity's data centers are HIPAA, PCI, ISAE-3402, SSAE 16 SOC1 & SOC2 certified.

Source: [Hivelocity at LinkedIn](https://www.linkedin.com/company/hivelocity-hosting/)

## What is Kubernetes?

Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by the Cloud Native Computing Foundation.

Kubernetes defines a set of building blocks that collectively provide mechanisms that deploy, maintain, and scale applications based on CPU, memory or custom metrics.

Source: [Wikpedia](https://en.wikipedia.org/wiki/Kubernetes)

## What is Cluster API?

Cluster API is a Kubernetes sub-project focused on providing declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters.

The Cluster API project uses Kubernetes-style APIs and patterns to automate cluster lifecycle management for platform operators. The supporting infrastructure, like virtual machines, networks, load balancers, and VPCs, as well as the Kubernetes cluster configuration are all defined in the same way that application developers operate deploying and managing their workloads. This enables consistent and repeatable cluster deployments across a wide variety of infrastructure environments.

Source: [cluster-api.sigs.k8s.io](https://cluster-api.sigs.k8s.io/)

## What is Cluster API Provider Hivelocity?

Cluster API Hivelocity adds the infrastructure provider Hivelocity to the list of supported providers. Other providers are AWS, Azure, Google Cloud Platform, OpenStack ... (See [complete list](https://cluster-api.sigs.k8s.io/reference/providers.html#infrastructure))


## Current Limitations

Up to now Loadbalancers are not supported yet. But we are working on it.

See [issue #55](https://github.com/hivelocity/cluster-api-provider-hivelocity/issues/55)

---

## Steps

### Step 1: Create servers

Create servers at [Hivelocity](https://www.hivelocity.net/).

Give the servers labels, so that clusters-api-provider-hivelocity knows which
Expand Down

0 comments on commit 64752a1

Please sign in to comment.