Python 虚拟环境全知道

对于每个python项目依赖的库版本都有可能不一样,如果将依赖包都安装到公共环境的话显然是没法进行区分的,甚至是不同的项目使用的python版本都不尽相同,有的用python2.7,有的用python3.6,所以对于python项目的环境进行隔离管理就成为一个必然的需求了。

[阅读全文]

Prometheus报警AlertManager实战

在前面一文Kubernetes使用Prometheus搭建监控平台中我们知道了怎么使用Prometheus来搭建监控平台,也了解了grafana的使用。这篇文章就来说说报警系统的搭建,有人说报警用grafana就行了,实际上grafana对报警的支持真的很弱,而Prometheus提供的报警系统就强大很多,今天我们的主角就是AlertManager

[阅读全文]

webpack3入门到放肆视频教程

前段时间花了点时间做了一个视频教学网站:海马学院,该产品的核心是围绕python全栈(也会涉及到nodejsgolang等)相关的知识教学,基础的一些教学视频全免费的,但是也会推出很多付费的教学视频,付费的以实际的实战项目为主,如果你愿意的话,只需要花费一顿饭钱就可以学习到很多项目实战的经验。

[阅读全文]

更优雅的git log

对于码农来说git log是自然熟悉不过的了,但是每天面对git log原始的日志格式,你是不是觉得很烦人啊,因为上面的给的信息太不人性化了,而且我相信大部分的码农的提交日志都是随心所欲的

[阅读全文]

Kubernetes 下升级Prometheus2.0

prometheus2.0正式版已经发布了,新增了很多特性,特别是底层存储性能提升了不少:https://prometheus.io/blog/2017/11/08/announcing-prometheus-2-0/

在将之前监控平台升级到2.0 的过程中还是有一些坑的,因为有很多参数已经更改了,还不清除怎么在kubernetes上搭建prometheus监控平台的,可以查看前面的文章Kubernetes使用Prometheus搭建监控平台

本文章中涉及到的yaml文件可以在github中查看。

[阅读全文]

kubernetes 日志收集方案

完善的日志系统是保证系统持续稳定运行的基石,帮助提升运维、运营效率,建立大数据时代的海量日志处理等能力都需要日志系统的支持,所以搭建一套行之有效的日志系统至关重要。

本文将介绍两种kubernetes 集群下日志收集的方案:阿里云日志服务或者EFK方案

[阅读全文]

kubernetes 下实现socket.io 的集群模式

socket.io 单节点模式是很容易部署的,但是往往在生产环境一个节点不能满足业务需求,况且还要保证节点挂掉的情况仍能正常提供服务,所以多节点模式就成为了生成环境的一种必须的部署模式。

本文将介绍如何在kubernetes 集群上部署多节点的socket.io服务。

文章中涉及到的代码可以前往https://github.com/cnych/k8s-socketio-cluster-demo查看。

[阅读全文]

在kubernetes 集群上搭建docker 私有仓库Harbor

Harbor是一个用于存储和分发Docker 镜像的企业级Registry 服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor 支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry 中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。

本文将介绍如何在kubernetes 集群上搭建一个高可用的Harbor 服务。

[阅读全文]

kubernetes dashboard 升级之路

在前面手动搭建高可用的kubernetes 集群一文中我们安装的kubernetes集群是v1.8.2版本,该版本的dashboard插件还是1.6.x,如果你把dashboard暴露在公网环境下面访问的话,是非常不安全的,因为该版本没有任何的安全登录之类的处理,在最新版本的1.7.x中则新增了更多安全相关的特性,我们可以升级到该版本或以上来暴露我们的dashboard到公网环境下面,当然安全都是相对的,能不暴露在公网环境下面当然是最好的。

[阅读全文]

手动搭建高可用的kubernetes 集群

之前按照和我一步步部署 kubernetes 集群的步骤一步一步的成功的使用二进制的方式安装了kubernetes集群,在该文档的基础上重新部署了最新的v1.8.2版本,实现了kube-apiserver的高可用、traefik ingress 的部署、在kubernetes上安装docker的私有仓库harbor、容器化kubernetes部分组建、使用阿里云日志服务收集日志。

部署完成后,你将理解系统各组件的交互原理,进而能快速解决实际问题,所以本文档主要适合于那些有一定kubernetes基础,想通过一步步部署的方式来学习和了解系统配置、运行原理的人。

本系列系文档适用于 CentOS 7Ubuntu 16.04 及以上版本系统,由于启用了 TLS 双向认证、RBAC 授权等严格的安全机制,建议从头开始部署,否则可能会认证、授权等失败!

[阅读全文]

给博客加上HTTPS

谁都不愿意在使用网站服务的时候,被恶心的运营商劫持加上一些他们的服务(真的很贱,不是吗?),不过这能难道我们程序员吗?当然不能,上https,老子全站https,你再劫持给我看看。

https证书服务大部分都是收费的,而且很贵,阿里云可以申请一个免费的证书,只能绑定一个域名,这里我们使用更加友好的免费https服务:Let’s Encrypt

[阅读全文]

Django 中STATIC_ROOT 与STATICFILES_DIRS的区别

在做Django项目的时候,经常会遇到静态文件访问的问题,在本地开发的时候可以正常的访问静态文件,部署到服务器上后就出现各种幺蛾子了,我猜你一定也遇到过吧?之前在settings.py配置文件中对STATIC_ROOTSTATICFILES_DIRS两个配置项不是特别理解,总感觉都差不多,在线上就把STATIC_ROOT替换成STATICFILES_DIRS了,虽然可以解决问题,但是却没有知其所以然。

[阅读全文]