Event

rook使用教程,快速编排ceph

kubernetes集群三步安装

本文中需要用的yaml文件和Dockerfile等都放到这个仓库 包含:rook operator ceph cluster storage class配置,mysql wordpress事例,性能测试fio Dockerfile与yaml等

Continue reading

基于Envoy的Ingress controller使用介绍

kubernetes集群三步安装

概述

ingress controller有很多,这里介绍其中一个contour, 我没有使用ingress controller的原因是

首先contour的实现是envoy, 其动态配置能力强于nginx,其次可以非常方便的对接监控系统,也是istio的核心组件。 本文其实还是以ingress的用法 为主, 因为不管是什么实现都兼容ingress的配置标准

还有就是contour是唯一实现了自定义IngressRoute CRD来实现更复杂的路由功能,websocket支持,健康检测,prefix rewite支持,还有TCP代理

Continue reading

是时候表现一下我的vim了

kubernetes集群三步安装 探讨可加QQ群:98488045

使用vim作golang开发

分享一些我使用的vim插件,以及制作过程,最终的功能有:

  • golang开发,补全,跳转,文件列表,函数列表等
  • kubernetes插件,方便写yaml文件
  • 好看的颜色主题

Continue reading

keepalived in docker

kubernetes集群三步安装

概述

目前keepalived作为kubernetes集群高可用的重要组件,保障虚拟ip可以在多个主机间漂移,sealos 也是使用了,只是在方案上与传统的方式有很大区别

首先把keepalived放到容器里了,版本也用了比较新的2.x.x以上

然后使用kubernetes static pod去管理keepalived服务

keepalived放到容器里的好处

  • 安装成功率更高,更跨平台, 传统方式如用yum安装或者其它,如果采用那些办法在别的一些发型版系统上sealos就不可用。其次,很多系统的源不一样导致版本不一致造成问题,如果通过源码编译可能一些系统库版本直接导致编译不通过,所以为了提高高可用的安装成功率,放容器里是最好的方式
  • 无需额外对keepalived增加监控, 因为是pod,而sealos又已经集成了prometheus,所以不需要再额外添加监控信息
  • 统一管理, keepalived异常退出什么的kubelet也会将其拉起,与其它的kubernetes组件就有了一个统一的方式管理

Continue reading

关于sealyun营销系统

概述

任何用户都可以通过sealyun赚钱,很方便的获取到一个分享链接,如果别的用户是通过你的分享链接购买商品的那么您将获得一笔不错的提成,目前是交易金额的60%,

也就是如商品50元,别的用户通过您的链接购买成功,您可获得30元,平台获得20元

操作步骤

  1. 获取营销链接 网站地址http://store.lameleg.com/

Continue reading

使用prometheus operator监控envoy

kubernetes集群三步安装

概述

prometheus operator应当是使用监控系统的最佳实践了,首先它一键构建整个监控系统,通过一些无侵入的手段去配置如监控数据源等 故障自动恢复,高可用的告警等。。

不过对于新手使用上还是有一丢丢小门槛,本文就结合如何给envoy做监控这个例子来分享使用prometheus operator的正确姿势

至于如何写告警规则,如何配置prometheus查询语句不是本文探讨的重点,会在后续文章中给大家分享,本文着重探讨如何使用prometheus operator

Continue reading

kube-scheduler定制,支持深度学习批处理任务调度

kubernetes集群三步安装

什么是批处理任务

深度学习中经常会出现多机多卡的任务,也就是同事会起多个pod,但是这多个pod属于同一个任务。

这样就会有一个问题

一个任务要起100个pod,每个pod需要一张卡,总共需要100张GPU卡,而集群中只有99张空闲的GPU卡,这样默认的k8s调度器会如何处理?

因为默认调度器是一个一个pod调度的,只会检查单个pod资源够不够,这样前99个都能成功,最后一个pod调度失败。

这样非常有可能造成

  1. 任务跑不了
  2. 前99个占着GPU不释放,新的任务无法调度
  3. 严重时整个集群死锁,都“占着茅坑不拉屎”

Continue reading

sealyun kubernetes离线包文档

前言

商品介绍

安装包通过kubeadm安装kubernetes集群,包含:

  • 核心基础组件 etcd apisver kubelet kube-proxy scheduler manager
  • addon组件 dashboard calico promethus grafana alertmanager node-exporter coreDNS

启用IPVS

可以内网环境进行安装,但是不包含docker

Continue reading

kubeadm杂谈

kubernetes集群三步安装

kubeadm 1.13版本

此版本更新了不少东西,以前老的配置不再适用

W1205 19:10:23.541054   58540 strict.go:54] error unmarshaling configuration schema.GroupVersionKind{Group:"kubeadm.k8s.io", Version:"v1beta1", Kind:"InitConfiguration"}: error unmarshaling JSON: while decoding JSON: json: unknown field

Continue reading

修改kubeadm证书过期时间

kubernetes集群三步安装

修改kubeadm证书过期时间

本文通过修改kubeadm源码让kubeadm默认的一年证书过期时间修改为99年

我已经编译好了一个放在了github上,有需要的可以直接下

使用方法:

[root@dev-86-202 ~]# chmod +x kubeadm && cp kubeadm /usr/bin
[root@dev-86-202 ~]# rm /etc/kubernetes/pki/ -rf
[root@dev-86-202 ~]# kubeadm alpha phase certs all --config  kube/conf/kubeadm.yaml

Continue reading