
k8s之应用实践
我将把本人使用k8s在企业中的实践,遇到的大大小小企业级的坑及各种技巧,汇总在本专栏,望共同进步,少踩坑
HurricaneXXX
这个作者很懒,什么都没留下…
展开
-
使用原生k8s及helm完成灰度(金丝雀)发布
背景最终结构原先的charts templates的目录结构templates-deployment-ingress-svc使用灰度后的charts templates的目录结构templates-deployment-group1-deployment-group2-ingress-svc结构说明使用原生的k8s来做灰度其实非常简单,利用的就是不同的deploy可...原创 2019-07-24 19:27:27 · 5749 阅读 · 1 评论 -
istio完成金丝雀、灰度发布
istio控制流量的核心是poilt组件原创 2019-07-19 11:35:42 · 1888 阅读 · 1 评论 -
如何用k8s部署海外企业项目服务
云平台目前大部分企业都使用云平台,一来不需要维护,二来节省成本,三来很多事情其实云平台已经做好了,没必要重复造轮子。企业常用云平台阿里云(支持海外)亚马逊(支持海外)微软云(支持海外)方法一般有两种:1.直接购买海外的主机,比如直接买一个美国的k8s,把服务部署上去,就解决了2.购买国内的主机,通过香港主机的路由转发实现海外访问,这样可以节省成本,因为中间件等就可以复用国内的,但...原创 2019-07-10 18:22:30 · 460 阅读 · 0 评论 -
nginx日志对接elk
背景elk版本:7.1.1nginx 版本随意简介在kibana中自带nginx日志插件,非常的好用,点开根据官方文档中的步骤一步一步来。我们需要在nginx服务器上,装一个filebeat,会自动把本地的日志推送到远程的elk服务器上日志的地址是可以配置的。换句话说,我们也可以换一个服务器。这个服务器专门拉nginx的日志,只要有日志文件就行,不需要nginx部署在上面fil...原创 2019-07-09 15:35:51 · 1168 阅读 · 0 评论 -
本地连接k8s中的kafka报错
报错内容error connecting to node 0 at kafka-0.kafka-headless.local:9092其实就是没有连接上kafka我是把svc作为nodeport暴露端口出来,去连接这个端口然后报错了。遇到这种情况,不要怀疑自己,一定是kafka的配置问题。kafka默认配置是不允许外部连接访问的,只允许localhost,部署的时候一定要修改配置两种解...原创 2019-07-05 20:28:43 · 3636 阅读 · 5 评论 -
kong或nginx配置前端请求跨域
我们目前使用的是kong作为一个总的api网关而今天出了一个问题kong的设置默认是不支持前端跨域的而前后端分离的项目大量的使用了跨域前端报错:response to preflight request doesn’t pass access control check:Redirct is not allowed如果是使用传统的nginx可以配置:参考文档:http://www.ng...原创 2019-07-02 20:48:01 · 2257 阅读 · 3 评论 -
kong-dashboard的使用
kong的个人理解kong就是对nginx进行再一次封装而做成的企业级api网关。kong的使用场景api网关有名的有zuul等,而且集成了springcloud。那么kong的使用场景在哪呢,个人认为要结合k8s,或者k8singress使用。而且kong目前可能没有想象的功能那么强大,不过还是比ingress好用多了对比ingress的好处:1.有可视化界面2.是api网关,可...原创 2019-07-01 21:37:52 · 4515 阅读 · 0 评论 -
记一个ingress和kong公用导致的k8s的显示bug
企业级情境我们使用的是k8s的ingress来做反向代理而实际使用发现,线上使用这种ingress很不方便。原因如下:1.域名太多不好管理2.我们使用的是charts自动发布到k8s,每次修改特殊的域名,都会新增一个charts3.ingress没有可视化界面3.ingress没办法批量修改,脚本又包括所有的特殊情况所以我们引进了Kong一个比ingress更好用的api网关k...原创 2019-07-01 20:49:18 · 935 阅读 · 0 评论 -
使用helm charts部署企业级elk
github地址:https://github.com/elastic/helm-charts/所有的charts千万不要自己写,一定要上官网,上官网,上官网!拉下charts后会有几个问题:1.charts需要修改一些2.拉取海外的镜像可能不行,有墙3.pv未绑定的问题发布指令需要分别发布e\l\k,最后还需要发布kafka,而kafka会自带zk helm upgrade --...原创 2019-06-28 19:52:37 · 1526 阅读 · 0 评论 -
ingress nginx优劣势分析
经过一系列的线上踩坑,背锅等各种由于域名导致的线上事故之后,ingress nginx实在是不好用。企业还是必须要经过一个更好用的api网关来统一管理域名建议使用kong来替代ingress:https://github.com/Kong/kubernetes-ingress-controlleringress nginx优劣势:优势:简单,通过helm charts可以统一发布缺点:...原创 2019-06-28 12:08:10 · 6406 阅读 · 0 评论 -
记一次线上k8s宕机
之前可使用kubectl top nodes观察发布时的cpu使用情况可以登陆node节点主机使用 top H -n 1 查看线程情况同时并发发布多个项目,导致cpu满了之后,挂掉导致该node节点的pod全部迁移至其他node节点,而其他node节点的cpu及线程最大限制都无法负载pod,导致node一个个宕机,最终整个集群宕机。经过查看发现是由于pid耗尽,致使docke...原创 2019-06-28 11:29:51 · 3107 阅读 · 1 评论 -
k8s企业elk性能调优问题
问题logstash消费速率远低于日志数量,消息堆积部署背景架构优点:1、采用kafka作为日志缓冲,在高并发情况下可以通过队列就能起到削峰填谷的作用,防止 es 集群丢失数据。2、实现动态schema,业务可以自定义schema,方便日志检索和查询3、每一个业务有独立的索引2.1 elk+kafka发现问题部署后发现日志量很大,一天有几个亿,kafka中堆积了很多消息,log...原创 2019-08-28 17:24:14 · 1402 阅读 · 0 评论