运维
使用 systemd timer 配置定时任务
· ☕ 2 分钟
1. 准备定时脚步 如果是 Bash 脚本,第一行需要指定解释器。 1 2 mkdir -p /root/scripts vim /root/scripts/quick-clear.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #!/bin/sh /usr/local/bin/kubectl --kubeconfig /root/.kube/config get pods --all-namespaces -o wide | grep Evicted | awk '{print $1,$2}' | xargs --no-run-if-empty -L1 /usr/local/bin/kubectl --kubeconfig /root/.kube/config delete pod -n || true /usr/local/bin/kubectl --kubeconfig /root/.kube/config get pods --all-namespaces -o wide | grep Error | awk '{print $1,$2}' | xargs --no-run-if-empty -L1 /usr/local/bin/kubectl --kubeconfig /root/.kube/config delete pod -n || true /usr/local/bin/kubectl --kubeconfig /root/.kube/config get pods --all-namespaces -o wide | grep Completed | awk '{print $1,$2}' | xargs --no-run-if-empty

海外多区下的监控系统
· ☕ 4 分钟
1. 相关背景 待在工作岗位上,总得做点事,也想做点新鲜事。但并不是你想做就有机会去做,并能做好。 一个人做、还是能和大家一起做,最终的结果是不一样的。这就涉及到时机,大家能否达成一致的动机。 今年是降本增效的一年,很多公司在裁员、减配降本。因此,对

运维与业务的系统设计差异
· ☕ 3 分钟
1. 通信协议的选择 运维系统更适合 HTTP 而非 gRpc 。 熟悉 HTTP 的运维、研发人员比其他协议的人多。在掌握 HTTP 协议的基础上,学习 Restful 风格的 HTTP API 很快。更多人熟悉、更易于学习,意味着更好沟通、更低的交接成本,因为他们有着更多共同的领域背景。 支持 HTTP 调试的工具非常多。无论

Thanos 进阶使用指南
· ☕ 4 分钟
1. 使用 Query 聚合数据 如上图,Thanos Query 可以对接的组件有: Thanos Store Gateway Thanos Query Thanos Receive Prometheus,借助于 Sidecar 利用 Thanos Query 之间的级联,我们可以实现跨组件的关联查询,组建超大型的监控系统。这也意味着,每个对接的组件应该提供足够快的 Prometheus API。整个接口的响应时

面向全球的镜像分发网络
· ☕ 5 分钟
1. 全球的网络规划 很多面向全球的多区域基础设施,在设计之初并没有在网络规划上花费太多心思。当业务复杂到一定程度时,又被逼着进行网络调整和优化。而任何网络上的大调整,都将对业务产生巨大影响。最终会陷入进退两难之地,只能投入更多人力,背上历史包袱