使用开源项目KuberLogic托管数据库和应用

网友投稿 293 2022-11-02

使用开源项目KuberLogic托管数据库和应用

文章目录

​​特性​​​​要求​​​​安装​​​​使用​​

​​Web UI​​​​REST API​​

​​支持的服务​​​​构建KuberLogic​​

​​创建容器镜像​​​​构建安装程序​​​​测试​​

​​本地模式​​​​远程模式​​

​​关于我​​

KuberLogic是一个开源平台,它在Kubernetes集群上部署和管理软件,并将基础设施转变为托管的PaaS。它可以托管运行在本地或任何云上的数据库和流行应用程序。该解决方案提供了现成的API、监视、备份以及与SSO的集成。

特性

Web UI自动配置自动minor更新自动故障转移定期备份资源使用监控能够根据需要扩大和缩小规模服务管理的REST API

要求

KuberLogic利用了很多顶尖的开源项目,它需要一个特定的环境来运行:

Kubernetes集群:

支持1.19,1.20,1.21,1.22版本默认配置的StorageClassloadBalance Service集群中至少有2个节点,每个节点有4G内存、2个cpu和5G硬盘空间因为性能损失,Minikube或Kind安装与docker驱动程序安装不受支持。

兼容S3存储进行数据备份(可选)

安装

从​​Releases页面​​下载​​kuberlogic-installer​​命令行安装工具,并将其添加到PATH。准备KuberLogic​​配置文件​​。如下所示config.yaml:

# cat config.yaml ---# Target deployment platform for Kuberlogic# Currently supported:# * `aws` (Amazon Web Services)# * `generic` (Any other Kubernetes installation. Default.)platform: generic# Whether to enable debug logs or notdebug-logs: true# Provides an absolute path to a kubeconfig file# default is $HOME/.kube/config# kubeconfig-path: /path/to/kubeconfig# namespace where Kuberlogic components will be installednamespace: kuberlogic# container registry connection settings. omit for public access# registry:# server: username: quayusername# password: quaypassword# connection endpoints configuration. These endpoints will be used to configure Kuberlogic endpoints# and it is expected that Kuberlogic ingress traffic will be received via these endpointsendpoints: kuberlogic: kuberlogic.cn # custom TLS certificates for UI. If not set will be generated self-signed #kuberlogic-tls: # ca.crt: /root/certs/rootCA.crt # tls.crt: /root/certs/kuberlogic.crt # tls.key: /root/certs/kuberlogic.key monitoring-console: mc.kuberlogic.cn # custom TLS certificates for monitoring tool. If not set will be generated self-signed #monitoring-console-tls: # ca.crt: /root/certs/rootCA.crt # tls.crt: /root/certs/kuberlogic.crt # tls.key: /root/certs/kuberlogic.key# `auth` section contains settings for Keycloak-based authenticationauth: # demo-user-password configures a password for Kuberlogic test user: user@kuberlogic.com demo-user-password: secret # admin-password is password for Keycloak realm administrator: `kuberlogic` admin-password: adminPassword

运行​​kuberlogic-installer install all -c ​​,如果k8s集群版本等不符合要求,则会报错。运行​​kuberlogic-installer status -c ​​为KuberLogic端点添加DNS记录,使它们指向KuberLogic Ingress IP。或者,如果您正在评估KuberLogic,您可能希望使用/etc/hosts文件提供本地访问。

使用

Web UI

安装之后,KuberLogic的安装过程是开箱即用的。要了解更多信息,请访问​​docs​​。

REST API

KuberLogic支持基于rest的服务管理API。更多详情,请浏览:

​​API方案​​

支持的服务

目前,KuberLogic支持:

MySQLPostgreSQL

即将支持的:

RedisMongoDB

构建KuberLogic

构建KuberLogic容器镜像和二进制安装程序文件。需要满足:

Golang 1.16Helm CLI 3.xDocker

创建容器镜像

make docker-build docker-push

构建安装程序

make installer-build

测试

KuberLogic包含一组集成测试。它们可以在两种模式下运行:

本地模式:当KuberLogic operator和ApiServer作为goroutines启动时:远程模式:测试发送API请求到远程ApiServer。

要在两种模式下运行测试,依赖项必须安装到Kubernetes集群中:

kuberlogic-installer install all# 启动Minio用于备份和恢复cd modules/apiservermake deploy-minio create-bucket

更多信息请参见​​docs​​。

本地模式

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

远程模式

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

关于我

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:常用的视频数据传输接口简介
下一篇:Mybatis的resultMap返回map问题
相关文章

 发表评论

暂时没有评论,来抢沙发吧~