不让DNS被刷回去

最近打通了多套在阿里云集群的内网,正常情况下可以用用外网地址访问,但是总归有一些限制,我们选择在搭建了一个DNS服务器,将域名指向了内网地址,并修改/etc/resolve文件使用自己搭建的DNS服务器 开始测试没出什么问题,但没多久发现ip又再次指向了外网地址,怀疑阿里云服务器自动刷新了DNS,… 根据经验编辑 /etc/sysconfig/network-scripts/ifcfg-eth0 这个文件,添加一行 PREDNS=no, 再次修改 /etc/resolve 等待两小时后正常,测试重启之后已有有用。 »

Choerodon证书管理终端cert-manager部署和测试

Choerodon将在0.10版本开始支持证书管理,支持自己导入证书和直接通过letsenscrypt申请证书,当然如果需要申请证书,您的域名应该正确解析到业务集群(注意是业务集群哦,也就是您运行着choerodon-agent的集群)。choerodon通过cert-manager申请证书,同时对cert-manager进行扩展支持导入证书。 choerodon定制了cert-manager也就意味着不能直接用官方的cert-manager了,在choerodon对外发布的helm chart中有cert-manager的包,我们直接使用这个 首先添加 helm repo helm repo add c7n https://openchart.choerodon.com.cn/choerodon/c7n/ helm repo update 安装cert-manager $ helm install c7n/cert-manager --version 0.1.0 --name cert-manager --namespace kube-system 如果安装失败查看下是不是以前有装过cert-manager,删除冲突的CRD,重新部署 安装完成之后可以看到cert-manager启动起来了,cert-manager需要通过issuer指定申请证书的地址,这里我们创建两个clusterissuer,一个用来申请证书,一个用来导入证书,记得把email改成自己的 创建clusterissuer cat <<"EOF" | kubectl apply -f - apiVersion: certmanager.k8s.io/v1alpha1 kind: ClusterIssuer metadata: name: letsencrypt-prod spec: acme: server: https://acme-v02.api.letsencrypt.org/directory email: choerodon@vk.vu privateKeySecretRef: name: letsencrypt-prod http01: {} --- apiVersion: certmanager.k8s.io/v1alpha1 kind: ClusterIssuer metadata: name: localhost spec: acme: server: https://acme-staging. »

测试服务器性能

使用docker快速测试服务器性能 安装docker curl -sSL https://get.docker.io | sh 测试 docker run registry.saas.hand-china.com/paas/benchvm:latest 默认测试docker存储目录所在的卷,如果需要测试其他卷,请在其他卷所有的目录下创建一个文件夹,并绑定到容器中的/disktest/中。如: mkdir -p /u01/distest docker run -v /u01/distest:/disktest registry.saas.hand-china.com/paas/benchvm:latest 测试结果及描述 参考值指在阿里云ECS中测试,符合使k8s能够稳定运行的数据。 ==== test network and io TERM environment variable not set. 1:此处显示主机的基本信息 CPU model : Intel Core Processor (Broadwell, IBRS) Number of cores : 4 CPU frequency : 2099.998 MHz Total size of Disk : 164.1 GB (112.0 GB Used) Total amount of Mem : 15885 MB (7436 MB Used) Total amount of Swap : 16379 MB (2180 MB Used) System uptime : 33 days, 0 hour 47 min Load average : 8. »

Golang 删除多余空格

有时string中会包含多个相连的空格,在切割字符串时带来麻烦,因此需要将多个空格变成一个,在这里使用go语言中的strings.Fields()方法 原始string origin_str := "root 282 0.0 0.1 2496848 6072 ?? Ss Fri10PM 0:05.51 /usr/libexec/taskgated -s" 使用如下方式多余清除空格 new_str := strings.Join(strings.Fields(origin_str)," ") 查看新的string root 282 0.0 0.1 2496848 6072 ?? Ss Fri10PM 0:05.51 /usr/libexec/taskgated -s »

Go 不能导入包

go 导入自己写的包一直不成功 cannot refer to unexported name xx 注意在go中,导入包的方法开头需要大写 检查大小写 go 使用http代理 export http_proxy=http://sss.wenqi.us:18888 export https_proxy=http://sss.wenqi.us:18888 go cgo dependent slow go get -u -v github.com/mattn/go-sqlite3 终极解决慢问题 rm -rf $GOPATH reflect报错 panic: reflect: call of reflect.Value.Elem on struct Value [recovered] 本身已经是一个Value值去除.Elem() panic: reflect: call of reflect.Value.NumField on ptr Value [recovered] 在调用前添加. »