https://github.com/nadundesilva/mesh-manager
Kubernetes Operator for managing microservices at scale
https://github.com/nadundesilva/mesh-manager
controllers kubernetes large-scale microservices
Last synced: 8 months ago
JSON representation
Kubernetes Operator for managing microservices at scale
- Host: GitHub
- URL: https://github.com/nadundesilva/mesh-manager
- Owner: nadundesilva
- License: apache-2.0
- Created: 2022-06-11T14:26:52.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-22T09:48:04.000Z (over 1 year ago)
- Last Synced: 2024-10-23T13:58:36.683Z (over 1 year ago)
- Topics: controllers, kubernetes, large-scale, microservices
- Language: Go
- Homepage:
- Size: 251 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Mesh Manager
[](https://github.com/nadundesilva/mesh-manager/actions/workflows/branch-build.yaml)
[](https://github.com/nadundesilva/mesh-manager/actions/workflows/vulnerabilities-scan.yaml)
[](https://opensource.org/licenses/Apache-2.0)
[](https://github.com/nadundesilva/mesh-manager/releases/latest)
[](https://hub.docker.com/r/nadunrds/mesh-manager)
[](https://hub.docker.com/r/nadunrds/mesh-manager)
Mesh Manager is Kubernetes Operator for managing microservices at scale. One of the main problems that any system faces with scale
is managing microservices and ensuring that the system runs properly. Mesh Manager aims to address this issue.
## Features
- Enforcing strictly specifying dependencies
- Prevention of missing dependency issues
## How to Use
### Prerequisites
The following tools are expected to be installed and ready.
- Kubectl
- Operator SDK
The following tools can be either installed on your own or let the installation scripts handle it.
- OLM to be installed in the cluster
OLM can be installed using the [operator-sdk](https://sdk.operatorframework.io/docs/installation/)
```bash
operator-sdk olm install
```
### How to Setup Operator
#### Quickstart
Run the following command to apply the controller to your cluster. The `` should be replaced with the release version
to be used (eg:- `0.1.0`) and kubectl CLI should be configured pointing to the cluster in which the controller needs to be started.
```bash
curl -L https://raw.githubusercontent.com/nadundesilva/mesh-manager/main/installers/install.sh | bash -s
```
#### Manual Installation
* Make sure all the pre-requisites are installed (including the dependencies which are normally installed by the installation scripts)
* Install the Operator Bundle using the Operator SDK. The `` should be replaced with the release version
to be used (eg:- `0.1.0`) and kubectl CLI should be configured pointing to the cluster in which the controller needs to be started.
```bash
operator-sdk run bundle docker.io/nadunrds/mesh-manager-bundle:
```
### Examples
Examples for the CRDs used by the Operator can be found in the [samples](./config/samples) directory.
### How to Cleanup Operator
#### Quick Remove
Run the following command to remove the controller from your cluster. Kubectl CLI should be configured pointing to the cluster in which the controller needs to be started.
```bash
curl -L https://raw.githubusercontent.com/nadundesilva/mesh-manager/main/installers/uninstall.sh | bash -s
```
#### Manual Removal
Remove the controller from your cluster by running the following command.
```bash
operator-sdk cleanup mesh-manager
```
## Support
:grey_question: If you need support or have a question about the Mesh Manager, reach out through [Discussions](https://github.com/nadundesilva/mesh-manager/discussions).
:bug: If you have found a bug and would like to get it fixed, try opening a [Bug Report](https://github.com/nadundesilva/mesh-manager/issues/new?labels=Type%2FBug&template=bug-report.md).
:bulb: If you have a new idea or want to get a new feature or improvement added to the Mesh Manager, try creating a [Feature Request](https://github.com/nadundesilva/mesh-manager/issues/new?labels=Type%2FFeature&template=feature-request.md).
## Development
The development guide can be found [here](./DEVELOPMENT.md). Contributions are welcome.