摘抄自 《SRE: Google运维解密》
字字珠玑。
继续阅读“琐事繁多是不是一定不好?”
摘抄自 《SRE: Google运维解密》
字字珠玑。
继续阅读“琐事繁多是不是一定不好?”
k8s中pod的存储在非单节点是不支持hostpath的,都得用各种分布式存储来实现.每个pvc对应的pv手工创建也很不现实,试了下rook-ceph分布式存储的搞法,感觉不错.其中也还是遇到了很多坑,这里稍微记录一下.
继续阅读“kubernetes搭建并使用rook/ceph的pv存储”
一点关于django类视图装饰器的小笔记。
django类视图是很常用的,对于传统的函数视图来说,装饰器可以直接装饰函数,但类视图,装饰器无法直接装饰类方法。
比较了几种常见的解决方法,个人觉得比较优雅的解决方法如下:
from django.shortcuts import render from django.utils.decorators import method_decorator from django.views.decorators.csrf import csrf_exempt from django.views.generic import View @method_decorator(csrf_exempt, name="dispatch") class login(View): @method_decorator(auth_login) def get(self, request, username): #....func... return render(request, 'login.html', {"displayName":username, "admin_flag":admin_flag})
默认的django-admin中用户的models权限只有三个,分别是(Can change, Can add, Can delete),显然的,对于绝大部分crud工程师(^_^)而言,一眼看过去就少了些什么,没错,少了很关键的Can view权限.
当然django-admin的用户权限是可以自定义的,需要改permission的meta,这里不细述,发现一个简单好用的django app,可以直接添加Can view权限,美滋滋.
最终效果如下
继续阅读“为django-admin的userpermission添加read only(can view)权限”
最近做的一个小web系统,主要的思路是,怎样才能将nginx集群的海量配置文件,包括server和upstream及location等完全对象化
想做的东西就类似于httpdns,将nginx的海量配置文件对象化,或者考虑能不能数据库化
现在的功能只是解析所有nginx配置文件,自动读取upstream列表和location中proxy_pass,然后做连接性追踪
当然,追踪列表也可自定义添加,在admin后台配置即可
最终效果图
继续阅读“一个自解析nginx upstream和location并检测连通性的web系统”
需要实现这样的需求,对于以个django app,需要对其中的一些restful api做IP访问限制,这样实现起来最方便的是在middleware中写逻辑。
关于django中间件的说明:
http://usyiyi.cn/translate/Django_111/topics/http/middleware.html
http://python.usyiyi.cn/translate/django_182/topics/http/middleware.html
继续阅读“django使用middleware实现views的访问限制”
zabbix restful api说明见官网文档
https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/apiinfo
使用了github上封装好的python zabbix api,免去了自己造轮子的过程
https://github.com/lukecyca/pyzabbix
继续阅读“使用zabbix api提取趋势(trend)和历史(history)数据”