2018-12-21
在使用golang写代码时,在遇到err值判断的时候,我们经常会用到 log.Fatal 和 log.panic 将错误信息进行日志输出的情况,不过遇到的错误一般会有两种: 一种是确实影响到了程序后面的执行,前后关联性比较强; 另一种是程序关联性并不强,当前的执行不成功或报错并不影响后面的执行,或者该错误并不会影响正常输出……
Continue reading
2018-12-20
一、需求 最近业务部分希望在几百台主机上安装python expect包(pexpect),向其了解了下需求,其需求是通过4a审计平台登陆到他们业务的任一主机后(默认是user1 用户登陆),其希望可以在user1下执行某命令后,可以向user2、user3、user4几个用户免密切换……
Continue reading
2018-12-20
本篇内容是 su部分帐户免密码切换 的衍生篇。在LINUX下有4个UID:RUID(real user id)、EUID(effective user id)、SUID(saved user id)、SUID(set user id),其具体区别如下: RUID, 用于在系统中标识一个用户是谁,当用户使用用户名和密码成功登录后一个UN……
Continue reading
2018-12-19
Go 1.8 为我们提供了一个创建共享库的新工具,称为 Plugins!同时官方文档也提示了:Currently plugins are only supported on Linux and macOS 。其可以应用如下场景: 通过plugin我们可以很方便的对于不同功能加载相应的模块并调用相关的模块; 也可以针对不同语言(英文、汉语、德语……)加载不同的语言so文件,……
Continue reading
2018-12-13
在 golang简易版TCP client server 篇中简单列了下golang下的c/s模式代码,不过遇到 server 端异常时, client端也就自动退出了,这里再给出一段自动重连的代码,实现无论server端如何,client始装循环下去。所以本篇的重点是client端的代码。 server 端代码 1package main 2import ( 3 "fmt" 4 "net" 5 "os" 6 "strings"……
Continue reading
2018-12-12
每个编程语言都会有socket类的编程,最常用的就是tcp c/s 和udp c/s,这里就使用golang实现一个简单的tcp server client程序,server会等待 client发送数据给他,server接收到数据后,再处理后回传给client 。具体效果如下图: simple-tcp-client-server server端代码如下: 1package……
Continue reading
2018-12-11
在 guacamole web网关平台的使用 篇中提到了其于user-mapping.xml 配置的认证,除此之外其还支持多种认证方式。这里主要提下guacamole与mysql的集成。 一、安装扩展包 这里主要涉及两个文件,一个是guacamole-auth-jdbc-mysql jar包(guacamol……
Continue reading
2018-12-10
一、guacamole是什么 guacamole是一个完全可以通过web界面来管理连接VNC、SSH、RDP(windows远程桌面)、telnet相关协议连接的一套组件 。其是基于Websocket + HTTP的方式实现的连接 。其架构图如下: guacamole-arch 从上图也可以看出Guacamole有2个……
Continue reading
2018-12-04
Prometheus 的四种数据类型分别是:Counter、Gauge、Histogram和Summary。这里分别做下介绍。 Counter Counter数据类型的特点: Counter 用于累计值,例如 记录 请求次数、任务完成数、错误发生次数。 一直增加,不会减少。 重启进程后,会被重置。 1例如:http_response_tot……
Continue reading
2018-12-03
在查看open-falcon 项目源码时,经常会看到其引用了一个类库toolkits,而仔细查看该类库的作者为秦晓辉(UlricQin)— 原Open-Falcon主程,现滴滴云运维负责人 。所以有了这层关系就不难理解open-Falcon引用toolkits里很多代码的原因了吧。to……
Continue reading