写点什么

开普勒云平台:如何安装依赖(二)

  • 2020-02-06
  • 本文字数:3322 字

    阅读完需:约 11 分钟

开普勒云平台:如何安装依赖(二)

五、安装 RabbitMQ 服务

为了方便给大家演示,rabbitmq 也使用的 docker 版本部署在 kubernetes 集群上,真实环境请使用独立的 rabbitmq 服务器


如果您还没有初始化持久化存储的,请在这里持久化存储配置好存储类再安装 rabbitMQ 服务。

5.1 安装

$ kubectl apply -f install/kubernetes/rabbitmq/statefulset.yaml  $ kubectl apply -f install/kubernetes/rabbitmq/service.yaml  
复制代码


有状态服务: statefulset.yaml 入口: ingress.yaml


kpass 在 rabbitmq 里需要创建:


  • Vhost: kplcloud

  • Exchanges: kplcloud-exchange

  • User: kplcloud

  • RoutingKey: kplcloud


1572488939288026667.jpeg

六、安装 Mysql 服务

6.1 mysql

为了方便给大家演示,mysql 也使用的 docker 版本部署在 kubernetes 集群上,真实环境请使用独立的 mysql 服务器


如果您还没有初始化持久化存储的,请在这里持久化存储配置好存储类再安装 mysql 服务。

6.2 安装

$ kubectl apply -f install/kubernetes/mysql/statefulset.yaml  $ kubectl apply -f install/kubernetes/mysql/service.yaml  
复制代码


  • MYSQL_ROOT_PASSWORD: mysql 用户名

  • MYSQL_ROOT_PASSWORD: mysql 密码


statefulset.yaml


本项目需要创建数据库: kplcloud

七、安装 ELK

Logstash、ES 对机器要的求比较高,建议使用独立的 ELK 集群负责日志的采集分析


如果您非要使用 Docker 版的 elk 的并且部署在 Kubernetes 集群里,如果还没有初始货持久化存储,先初始化持久化存储的,请在这里持久化存储配置好存储类再安装相关服务服务。


ELK 主要包含 Elasticsearch、Logstash、Kibana 几个服务,kibana 和 logstash 可以做在 Deployment,全 ES 需要持久化,因为日志数据是存在 ES 上的。


$ kubectl apply -f install/kubernetes/elk/elasticsearch.yaml  $ kubectl apply -f install/kubernetes/elk/logstash.yaml  $ kubectl apply -f install/kubernetes/elk/kibana.yaml  $ kubectl apply -f install/kubernetes/elk/ingress.yaml  
复制代码

八、安装 Harbor

镜像仓库就别在跑 kubernetes 集群上了,似乎也跑不了,找一台容量大的有安装 Docker 的服务器进行搭建。


安装启动方式,请查看官方说明:https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md

8.1 安装

下载 Harbor 安装文件,我这下的是离线处理,如果下载不了请加代理


$ https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.1.tgz  
复制代码

8.2 解压

$ tar -zxvf harbor-offline-installer-v1.8.1.tgz  
复制代码

8.3 配置 harbor 文件 harbor.conf

\## Configuration file of Harbor  
\# hostname设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost hostname = hub.kpaas.nsini.com
\# 访问协议,默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on ui_url_protocol = http
\# mysql数据库root用户默认密码root123,实际使用时修改下 db_password = root123
max_job_workers = 3 customize_crt = on ssl_cert = /data/cert/server.crt ssl_cert_key = /data/cert/server.key secretkey_path = /data admiral_url = NA
\# 邮件设置,发送重置密码邮件时使用 email_identity = email_server = smtp.mydomain.com email_server_port = 25 email_username = sample_admin@mydomain.com email_password = abc email_from = admin <sample_admin@mydomain.com> email_ssl = false
\# 启动Harbor后,管理员UI登录的密码,默认是Harbor12345 harbor_admin_password = Harbor12345
\# 认证方式,这里支持多种认证方式,如LADP、本次存储、数据库认证。默认是db_auth,mysql数据库认证 auth_mode = db_auth
\# LDAP认证时配置项 \#ldap_url = ldaps://ldap.mydomain.com \#ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com \#ldap_search_pwd = password \#ldap_basedn = ou=people,dc=mydomain,dc=com \#ldap_filter = (objectClass=person) \#ldap_uid = uid \#ldap_scope = 3 \#ldap_timeout = 5
\# 是否开启自注册 self_registration = on
\# Token有效时间,默认30分钟 token_expiration = 30
\# 用户创建项目权限控制,默认是everyone(所有人),也可以设置为adminonly(只能管理员) project_creation_restriction = everyone
verify_remote_cert = on </sample_admin@mydomain.com>
复制代码

8.4 启动 Harbor,直接执行./install.sh 或 docker-composer 都可以

$ ./install.sh  $ docker-compose start  
复制代码

九、Prometheus 安装

如果还没有初始货持久化存储,先初始化持久化存储的,请在这里持久化存储配置好存储类再安装相关服务服务。


Prometheus 需要将数据存在本地,所以需要挂载持久化存储。


$ kubectl apply -f install/kubernetes/prometheus/deployment.yaml  $ kubectl apply -f install/kubernetes/prometheus/ingress.yaml  $ kubectl apply -f install/kubernetes/prometheus/configmap.yaml  $ kubectl apply -f install/kubernetes/prometheus/serviceaccount.yaml  $ kubectl apply -f install/kubernetes/prometheus/service.yaml  $ kubectl apply -f install/kubernetes/prometheus/persistentvolumeclaim.yaml  
复制代码

9.1 相关配置

configmap.yaml 文件有五个文件:


  • etcd3.rules.yml

  • kube-state-metrics_rules.yml

  • kubelet_rule.yml

  • kubernetes_rule.yml

  • prometheus.yml


在 prometheus 里引用了上面 4 个文件。如果您有新的规则可以在这里增加。


在 prometheus.yml 文件里有配置 alerting 目前默认发身 alertmanager:9093 ,若您有自己的报警管理平台,修改该地址就行,若还想使用 alertmanager 的话请看安装 AlertManager。

十、安装配置 alertmanager

Alertmanager 主要是接收来自 prometheus 的 alert 数据

10.1 安装

可以独立安装不使用 Docker,以下案例是部署在 kubernetes 集群上。


$ kubectl apply -f install/kubernetes/alertmanager/deployment.yaml  $ kubectl apply -f install/kubernetes/alertmanager/ingress.yaml  $ kubectl apply -f install/kubernetes/alertmanager/configmap.yaml  $ kubectl apply -f install/kubernetes/alertmanager/service.yaml  
复制代码

10.2 相关配置

这里采用 webhook 的方式将报警信息发送到 kplcloud 平台,kplcloud 接收数据处理并入 rabbitmq。


apiVersion: v1  data:    config.yml: |-      global:  
route: group_by: ['alertname', 'cluster', 'service'] group_wait: 30s group_interval: 5m repeat_interval: 10m receiver: webhook
receivers: - name: 'webhook' webhook_configs: - url: 'http://kplcloud:8080/public/prometheus/alerts' kind: ConfigMap metadata: name: alertmanager
复制代码


kplcloud 处理完的数据最终根据相应的规则推送给相应的用户及平台等。


1572489152653045750.jpeg

十一、安装 kpaas

$ git clone github.com/kplcloud/kplcloud.git  
复制代码

11.1 Docker

$ docker pull kplcloud/kplcloud:latest  
复制代码

11.2 kubernetes

基础服务安装: install.md


若您的其他服务都已经准备好了,可以直接执行以下命令在 kubernetes 上进行部署开普勒云平台。


$ kubectl apply -f install/kubernetes/kpaas/configmap.yaml  $ kubectl apply -f install/kubernetes/kpaas/deployment.yaml  $ kubectl apply -f install/kubernetes/kpaas/service.yaml  $ kubectl apply -f install/kubernetes/kpaas/ingress.yaml  
复制代码


如果您有私有仓库,记得在 master 节点上执行一下:


$ kubectl create secret generic regcred --from-file=.dockerconfigjson=/root/.docker/config.json --type=kubernetes.io/dockerconfigjson -n default  
复制代码


在每个 namespace 下都创建一下,这样 k8s 就有权限拉取私有仓库的镜像了


Deployment 需要把 imagePullSecrets 加上:


imagePullSecrets:  - name: regcred  
复制代码

开源地址:


本文转载自宜信技术学院。


原文链接:http://college.creditease.cn/detail/316


2020-02-06 21:331210

评论

发布
暂无评论
发现更多内容

低代码平台中的数据连接方式(下)

Baidu AICLOUD

前端 低代码 爱速搭

Spring Cloud源码分析之Eureka篇第四章:服务注册是如何发起的

程序员欣宸

Java spring Spring Cloud Eureka 7月月更

风靡B站的《看漫画学Python》到底是什么来头?

博文视点Broadview

ORACLE进阶(五)SCHEMA解惑

No Silver Bullet

oracle schema 7月月更

为租客提供帮助

源字节1号

微信小程序 软件开发 前端开发 后端开发 租房小程序

麒麟信安根植欧拉:共筑中国操作系统崛起之路

脑极体

2022PAGC 金帆奖 | 融云荣膺「年度杰出产品技术服务商」

融云 RongCloud

内部排序——插入排序

乔乔

7月月更

决策树算法

秃头小苏

决策树 7月月更

Linux透明大页机制在云上大规模集群实践介绍

百度Geek说

Linux 运维 linux 文件权限控制

Navigation — 这么好用的导航框架你确定不来看看?

编程的平行世界

android 架构 框架学习 android jetpack

融云斩获 2022 中国信创数字化办公门户卓越产品奖!

融云 RongCloud

【堡垒机】云堡垒机和普通堡垒机的区别是什么?

行云管家

云计算 数据安全 堡垒机 云堡垒机 IT安全

小程序目录结构

小恺

7月月更

leetcode 241. Different Ways to Add Parentheses 为运算表达式设计优先级(中等)

okokabcd

LeetCode 分治 数据结构与算法

讲师征集令 | Apache SeaTunnel(Incubating) Meetup 分享嘉宾火热招募中!

Apache SeaTunnel

谈谈 SAP iRPA Studio 创建的本地项目的云端部署问题

汪子熙

SAP 7月月更 iRPA 智能机器人 流程自动化

如何参与开源项目 - 细说 GitHub 上的 PR 全过程

玩转Devop和研发效能DevStream/DevLake

GitHub 开源 DevOps DevStream

云计算安全扩展要求关注的安全目标和实现方式区分原则有哪些?

行云管家

云计算 等保 等保2.0 云计算安全扩展

社会责任·价值共创,中关村网络安全与信息化产业联盟对话网信企业家海泰方圆董事长姜海舟先生

电子信息发烧客

最佳实践 | 用腾讯云AI意愿核身为电话合规保驾护航

牵着蜗牛去散步

人工智能 腾讯云 腾讯 技术干货 电话合规

SysOM 案例解析:消失的内存都去哪了 !| 龙蜥技术

OpenAnolis小助手

开源 案例 内存泄漏 龙蜥技术 allocpage

交付效率提升52倍,运营效率提升10倍,看《金融云原生技术实践案例汇编》(附下载)

York

云原生 金融科技 金融行业

重磅!海泰方圆工业强基智能网联汽车项目顺利通过验收

电子信息发烧客

2022年5月互联网医疗领域月度观察

易观分析

互联网医疗

银行需要搭建智能客服模块的中台能力,驱动全场景智能客服务升级

易观分析

人工智能

什么是数据泄露

AIWeker

机器学习 Kaggle 数据泄露 7月月更

跬智 Kyligence 入选工信部“工业大数据分析与集成应用重点实验室”工作组成员单位

Kyligence

大数据 Kyligence 工业数据智能

得物客服热线的演进之路

得物技术

大前端 客服

作战图鉴:12大场景详述容器安全建设要求

青藤云安全

网络安全 解决方案 容器安全

开普勒云平台:如何安装依赖(二)_文化 & 方法_Geek_7de8f6_InfoQ精选文章