写点什么

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

  • 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:33684

评论

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

只需6步,教你从零开发一个签到小程序

华为云开发者联盟

小程序 App 移动 智慧校园 FunctionGraph

赛迪发布《2020-2021年中国IT服务市场研究年度报告》,联想位居第一梯队

科技大数据

科技互联网

基于香港服务器的应用开发中测试数据管理的 3 个最佳实践

九河云安全

【Vue2.x 源码学习】第二十七篇 - Vue 生命周期的实现

Brave

源码 vue2 8月日更

九大核心专题,630页内容,熬夜23天吃透,我收割了3个大厂offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

CC挖矿系统源码开发

获客I3O6O643Z97

挖矿 挖矿矿池系统开发案例 fil矿机

论 Erda 的安全之道

尔达Erda

云原生 安全 企业数字化转型 云平台 开发平台

快来看,大数据两地三中心的容灾也可以如此省心!

华为云开发者联盟

大数据 数据湖 容灾 华为云MRS 两地三中心

TrafficStatsRunnable 实用封装

Changing Lin

8月日更

50 亿观众的 “云上奥运”,顶级媒体背后的数智化力量

阿里云CloudImagine

阿里云 直播技术 视频制作 视频云 奥运

三面阿里被挂,竟获内推名额,历经5面拿下口碑offer(Java后台)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

在阿里晋升3次,5年拿下P8岗位,这份pdf记录了我的整个成长过程

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

服务器的升级,不可避免的安全问题

九河云安全

Mysql读写锁保姆级图文教程

华为云开发者联盟

MySQL 数据 读写锁 读锁 MyLSAM

Serverless 全能选手,再添一“金”

Serverless Devs

Serverless 互联网 云原生

防止数据丢失和减轻勒索软件攻击的 5 种方法

九河云安全

巨头纷纷布局分布式云,一场新的云战争即将打响

云计算

632页!我熬夜读完这份“高分宝典”,竟4面拿下字节跳动offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

iOS开发-为 iOS 编写 Kotlin Parcelize 编译器插件

iOSer

ios 编译器 编译器原理 iOS 知识体系 Kotlin Parcelize

2021全球开源技术峰会|IoT 时代的开源数据基础设施

EMQ映云科技

开源 IOT Platform IoT emq 开源技术

你的工作有弹性么?

escray

学习 极客时间 朱赟的技术管理课 8月日更

推动数据中心行业的“水电煤”,可视化如何用数据改变传统产业?

一只数据鲸鱼

机房 数据可视化 数字孪生 智能IDC

阿里云-云开发平台入门篇——静态网站的全生命周期实战

若尘

阿里云 8月日更

这本“算法宝典”讲得透彻,完全掌握后,我竟拿到字节跳动offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

这几个棘手的面试常见问题,如何高情商的回答?

架构精进之路

面试 情商 8月日更

如何实时打通数据孤岛?Tapdata 创始人唐建法受邀于GOTC深度分享

tapdata

数据库 打通数据孤岛 数据同步 Real Time DaaS GOTC

Python代码阅读(第4篇):过滤掉列表中的唯一值

Felix

Python 编程 Code Programing 阅读代码

限12小时删!白嫖对标阿里P5—P8的Java学习路线+大厂刷题秘籍

Java架构追梦

Java 阿里巴巴 架构 面试

专业好用的数据恢复软件推荐

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

如何保存数据并更快地从勒索软件攻击中恢复

九河云安全

2021第二届云原生编程挑战赛正式启动,抢先报名!

阿里巴巴云原生

阿里云 Serverless RocketMQ 云原生 dubbo

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