zhangguanzhang's Blog

zhangguanzhang's Blog

站在巨人的肩膀上

/boot目录被清空下物理机无法开机的一次救援
        今天下午到公司被通知苏州一个节点的客户的裸金属无法开机,14:00上去到16:50终于给整好了,这里记录下笔记分享下 故障现象物理机裸金属,连上跳板机通过带外连上去(等同于现场接了一个显示屏+键盘一样)错误为1234.errorL file `/grub2/i386-pc/normal.mod' not found.Entering rescue mode...grub rescue>        &nbs...
ansible数量限制上的幂等性
由来准备写上一篇文章的consul成ansible,在证书方面,cli和ca需要执行一次生成,而server和agent证书需要多次执行产生。另外我们也要考虑,dc1-server-consul-0*.pem需要拷贝到机器1,1拷贝到机器2.如何在生成证书的时候中断后再次运行也会达到目标的数量来实现幂等性,而不是证书生成多了另外证书还得按照index去拷贝到指定机器,也就是类似下面的123scp 001.pem ip1:/etc/xxxscp 002.pem ip2:/etc/xxxscp 003.pem ip3:/etc/xxx 场景1 – tls的幂等性规划这里我是三台server1...
高可用的SSL consul cluster实践
同事dnsmasq + consul 整服务自动发现,但是不是tls且consul server是单点,而且进程启动用的nohub而不是systemd,这里查了下资料实践了下 部署过程已经写成了ansible,地址 https://github.com/zhangguanzhang/consul-tls-ansible 开了五台云主机,总体规划为下面,角色那有条件的可以分开,例如client单独一台 IP Hostname CPU Memory role nodeName 172.19.0.3 consul1 4 8G server 172.19.0.3 172.19....
修改源码更改prometheus的时区问题
先说明一点,时区UTC不影响prometheus和grafana,这篇文章只是提供一个修改的思路和步骤 日志时区修改代码分析先起最新的prometheus挂载时区文件1234567docker run --net host -v /etc/localtime:/etc/localtime prom/prometheuslevel=info ts=2019-09-05T09:44:40.409Z caller=main.go:293 msg="no time or size retention was set so using the default time retention...
gobot控制esp8266
材料gobot官网是Arduino的demo,官网上看了下支持esp8266,整好之前整wifi攻击器的时候有就玩了下。我是在windows编译的,没有8266的话自己去淘宝上一块儿node-mcu+数据线(本质上就是个带串口和排针的esp8266-12,买驱动是CH340G的,就是usb口旁边有个长条形ic,方的是cp2102不稳定会导致windows蓝屏) 环境搭建用goland写代码,不推荐vscode写golang,自行安装golang(记得设置好环境变量)和goland,现在golang最新版本是12.9整个demo分为两部分,客户端gobot去设置和控制esp8266,826...
ubuntu preseed无人应答安装
之前的centos自动安装整得差不多了,今天有空研究下ubuntu的自动应答安装,过程是按照我遇到的问题的时间线的角度来描述,并不是总结后正确的开始姿势。kickstart是red hat开发的。ubuntu的安装界面是一个debian-installer的二进制文件进程运行tty1提供的选择交互安装界面: ubuntu自带的应答是preseed,相关文档页面是 https://help.ubuntu.com/lts/installation-guide/amd64/apb.html实际上安装完成后我们可以安装debconf-utils后使用debconf-get-selections ...
golang headless browser包chromedp初探
什么是cdp        前天晚上想写个网站自动投稿,但是chrome F12抓的包里请求的几个参数里的值不知道js咋生成的,看不懂js。询问了下网友,网友看我截图请求蛮多的,说有空帮我看看。并且他说到了模拟过程虽然能成功但是可能反爬措施强会导致封号,建议我用无头浏览器整。        搜了下相关概念,无头浏览器的话python里就是selenium驱动的,广泛使用的headless browser解决方案PhantomJS已...
为什么我不用nodePort之偶然中奖几率
嗯,1.6.7的老集群。早上反应数据库实例创建不出来。发现接口port的tcp不可达,查看kube-proxy的日志如下123456[root@HB1-xxxxx-S03 kubernetes]# tailf kube-proxy.INFO E0708 09:44:03.437284 394350 proxier.go:1062] can't open "nodePort for cloudify/cloudae-cfy-nginx:port1" (:16081/tcp), skipping this nodePort: listen tcp :1608...
golang的net/http包的客户端简单科普
之前准备写个简单的api的调用,百度和问了很多人后发现基本对于http的客户端熟悉的人非常少。或者对包的不了解自己造了效率很低的轮子,而且官方一些包里有坑,被坑过,这里简单科普下 简单的get和posthttp包里下列可以直接使用的请求方法1234func Head(url string) (resp *Response, err error)func Get(url string) (resp *Response, err error)func Post(url string, bodyType string, body io.Reader) (resp *Response, err ...
uefi模式下docker+交换机部署pxe批量安装
        华三服务器的ipmi的web提供了nfs挂载iso去安装,也是我之前使用的,发现研发给的镜像在4g以上(镜像基于centos7.3改的,我之前测试都是用的minimal镜像890M左右)。安装的时候报错,然后当面测试得出结论nfs的网速原因,其次也是我们这边办公网是百兆。。。        办公网被it接管了,交换机密码不给,自己找了台5130交换机,下面接服务器和我自己电脑搭建测了下定制iso的pxe流程 这是组...
avatar
Zhangguanzhang
on the way