Giter VIP home page Giter VIP logo

tastembekov / kuberlogic Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kuberlogic/kuberlogic

0.0 1.0 0.0 7.56 MB

Kuberlogic is an open-source product that deploys and manages software on top of the Kubernetes cluster and turns infrastructure into a managed PaaS.

Home Page: https://kuberlogic.com

License: Apache License 2.0

Dockerfile 0.49% Makefile 1.52% Go 47.38% Shell 1.28% Smarty 1.09% Mustache 4.36% Lua 5.95% JavaScript 0.40% TypeScript 29.92% HTML 5.12% SCSS 2.48%

kuberlogic's Introduction

KuberLogic

Development build codecov

logo

KuberLogic is an open-source platform that deploys and manages software on top of the Kubernetes cluster and turns infrastructure into a managed PaaS. It allows running managed databases and popular applications deploying on-premises or at any cloud. The solution provides API, monitoring, backups, and integration with SSO right out of the box.

usage

Features

  • Web UI
  • Automatic provisioning
  • Automatic minor updates
  • Automatic failover
  • Scheduled backups
  • Resource usage monitoring
  • Ability to scale up and down as needed
  • REST API for service management

Requirements

KuberLogic leverages a lot of top notch open-source projects and it requires a specific environment to run on top of:

  • Kubernetes v1.20.x with:
    • StorageClass configured as a default
    • LoadBalancer Services
    • At least 2 nodes in cluster with 4G of RAM, 2 CPUs and 5G of disk space each
  • S3 compatible storage for backups (optional)
  • Helm v3.4 CLI tool

Installation

  1. Download kuberlogic-installer command-line installation tool for your platform from the Releases page and add it to PATH.
  2. Prepare the KuberLogic configuration file.
  3. Run kuberlogic-installer install all -c <configFile>
  4. Run kuberlogic-installer status -c <configFile>
  5. Add DNS records for KuberLogic endpoints so they are pointing to KuberLogic Ingress IP. Alternatively, if you are evaluating KuberLogic, you may want to use /etc/hosts file to provide the access locally.

Usage

Web UI

After the installation, KuberLogic installation process is available out of the box. To learn more visit docs.

REST API

KuberLogic supports RESTful API for service management. To learn more visit:

Supported services

Currently, KuberLogic supports:

  • MySQL
  • PostgreSQL

Upcoming integrations:

  • Redis
  • MongoDB

Build KuberLogic

KuberLogic artifacts are container images and the installer binary. Requirements are:

  • Golang 1.16
  • Helm CLI 3.x
  • Docker

Build container images

make docker-build docker-push

Build the installer

make installer-build

Tests

KuberLogic includes a set of integration tests. They can be run in two modes:

  • Local mode when KuberLogic operator & apiserver are started as goroutines:
  • Remote mode when tests send API requests to a remote apiserver.

To run tests in both modes, dependencies must be installed into a Kubernetes cluster:

kuberlogic-installer install all
# setup Minio for backup & restore tests
cd modules/apiserver
make deploy-minio create-bucket

For more information see docs.

Local mode

cd modules/apiserver
make undeploy-operator generate-local-webhook-certs patch-endpoint
MY_VERSION=5.7.31 GODEBUG: x509ignoreCN=0 KUBERLOGIC_KUBECONFIGPATH=${HOME}/.kube/config make coverage-report RUN=/mysql 

Remote mode

cd modules/apiserver
MY_VERSION=5.7.31 GODEBUG: x509ignoreCN=0 KUBERLOGIC_KUBECONFIGPATH=${HOME}/.kube/config make remote-test REMOTE_HOST=<apiserver endpoint> RUN=/mysql

Support

Feel free to open an issue if you need any help. You can also reach us at [email protected] with any questions.

License

CloudLinux Software Inc 2019-2021 All Rights Reserved

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

kuberlogic's People

Contributors

ynnt avatar telepenin avatar andheroe avatar sgevorgyancl avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.