原文位于 https://github.com/huazhihao/kubespy/blob/master/implement-a-k8s-debug-plugin-in-bash.md 背景 Kubernetes调试的最大痛点是精简过的容器镜像里没有日常的调试工具.背后的原因是精简容器镜像本身就是容器技术的最佳实践之一.nginx的容器镜像甚至不包含ps和curl这种最基础的工具.这种完全服务于生产环境的策略无异于过早优化,但受制于immutable infrastructure的基本思想和C…
1. 在node上安装Gluster客户端(Heketi要求GlusterFS集群至少有三个节点) 删除master标签 kubectl taint nodes --all node-role.kubernetes.io/master- kubectl describe node k8s查看taint是否为空 查看kube-apiserver是否以特权模式运行: ps -ef | grep kube | grep allow 给每个node打上标签: kubectl label node k8s…
题目链接: Codeforces757G 题目大意:给出一棵n个点的树及一个1~n的排列pi,边有边权,有q次操作: 1 l r x 求 $\sum\limits_{i=l}^{r}dis(p_{i},x)$ 2 x $swap(p_{x},p_{x+1})$ $n,q<=2*10^5$,强制在线 如果多次询问一个点到所有点的距离和,我们可以点分树解决,在点分树上每个点x维护点分树上x子树中的所有点到x的距离和及所有点到x父节点的距离和,每次询问往根爬容斥一下求和即可.如果没有修改操作我们依旧可…
一.程序中的错误处理 在系统中定义了一个全局变量errno.在这个全局变量中存放着系统调用或者库函数出错的信息(错误编号).然后根据错误编号获取错误信息. 举例说明: 打开一个文件,如果这个文件不存在,查看错误信息. 代码参见 file.c perror() strerror() #include <stdio.h> void perror(const char *s); 功能:输出一条系统的错误消息 参数: s:用户给定的字符串. 返回值: 不用返回. 补充: FILE *stdin; 标准…
k8s Kubernetes v1.10 最简易安装 shell # Master 单节点快速安装 # 最简单的安装shell,只为快速部署k8s测试环境 #环境centos 7.4 #1 初始化环境 curl -s http://elven.vip/ks/k8s/oneinstall/0.set.sh |bash #2 下载镜像,安装kubeadm工具 curl http://elven.vip/ks/k8s/oneinstall/1.download.sh |bash #3 部署k8s ma…
背景 近来在研究k8s,学习到pv.pvc .storageclass的时候,自己捣腾的时候使用nfs手工提供pv的方式,看到官方文档大量文档都是使用storageclass来定义一个后端存储服务, 使用pvc来自动申请pv, 所以花了点时间研究了下glusterfs配合heketi如果为k8s动态提供存储. 环境 主机名 ip地址 角色 备注 master 192.168.16.10 k8s-master,glusterfs,heketi  heketi只需要一个节点部署就可以了. node0…
主要参考博客gcc创建和使用静态库和动态库 对于熟悉windows的同学,linux上的静态库.a相当于win的.lib,动态库.so相当于win的.dll. 首先简要地解释下这两种函数库的区别,参考<Linux程序设计> 1. 静态库也被称为归档文件(archive,因此创建命令是ar),编译器和链接器负责将程序代码和静态库结合在一起组成单独的可执行文件: 但是缺点是许多应用程序同时运行并使用来自同一个静态库的函数时,内存中就会有一个函数的多份副本,而且程序文件自身也有多份同样的副本,这将消…
用了会AndBug,尽管挺强大的可是作为习惯了OD.EDB作为动态调试工具的人,自然有些不习惯,于是乎寻求新的动态调试解决方式.但大多数都是NetBeans + apktool.想着还得多下一个IDE就各种烦躁,还是去寻求Eclipse的组合吧. http://code.google.com/p/android-apktool/wiki/SmaliDebugging 找到apktool的官网,看到有能够实现动态调试. 能够在反编译和回编的时候通过设置參数给目标APK中的manifest文件里增加…
目录 一. add google apt-key 二. k8s master init 三. k8s node add to master cluster(use this command when you wanna add node) k8s tutorial series main reference 一. add google apt-key 1.vim /etc/apt/source.list (use k8s repository (中科大源)) deb http://us.arch…
1 在开始执行eval后面的命令之前eval主要做了哪些事情 1.1 去掉反斜杠的quoting 比如\$ac_optarg,会变成$ac_optarg. 1.2 去掉单引号的quoting 比如: a=10 b=a //这里只是给b赋值为a,并没有扩展a. eval y='$'$b -->10 首先进行一次扩展,y=$a,然后执行这条命令. 2 总结一下 eval首先进行一次扩展,只是参数的每个部分扩展一次,然后执行扩展后的命令. 或者,同make的eval一样,首先进行一次扩展,然后扩展后得…