install ElastAlert

在 三 10 七月 2019 发布于 TECH SKILLS 分类 • 标签为 elk, alert, elastalert • 1 min read

准备工作

对于ElastAlert的介绍我就不说了,网上一搜一大堆的。这里直接进入正题。
1. 对应你的kibana版本去下载elastalert-kibana-plugin,到这里去下 https://github.com/bitsensor/elastalert-kibana-plugin/releases
2. 下载ElastAlert程序本身,到这里去下 https://github.com/Yelp/elastalert

安装

  1. 进入ElastAlert目录,执行
# yum install python-setuptools
# git clone https://github.com/Yelp/elastalert.git
# cd elastalert
# python setup.py install

中间或许会提示报错,缺一些包,库什么的,根据报错装上对应的就行了。比如我就提示了缺gcc,所以

# yum install gcc …

阅读全文

configure opendistro elasticsearch

在 一 10 六月 2019 发布于 TECH SKILLS 分类 • 标签为 elk, elasticsearch, opendistro, kibana • 1 min read

系统环境:Centos 7

安装ELASTICSEARCH

按照官方文档(https://opendistro.github.io/for-elasticsearch-docs/)的说明,首先需要安装JDK(使用官方源地址)

cd /etc/yum.repos.d/  
curl https://d3g5vo6xdbdb9a.cloudfront.net/yum/opendistroforelasticsearch-artifacts.repo -o opendistroforelasticsearch-artifacts.repo  
yum install java-11-openjdk-devel    #如果需要在本机上安装logstash,则建议安装yum install java-1.8.0-openjdk-devel

因为新版的logstash-6.3.2不支持最新版的jdk-10.0.2,需要降为上一个稳定版jdk-8u181。否则会报错Unrecognized VM option 'UseParNewGC'参考链接https://github.com …


阅读全文

Nginx Lua中的小陷阱

在 一 11 三月 2019 发布于 TECH SKILLS 分类 • 标签为 Openresty, Nginx, Lua • 1 min read

在日常的lua脚本调试中,我们通常会用ngx.say或者ngx.print来打印信息,但是要注意了,当你在ngx.redirect前面使用这两个方法时,就会报错哦

lua entry thread aborted: runtime error: attempt to call ngx.redirect after sending out the headers

但是用ngx.log方法一般是没有问题的


另外这里再记录一下,lua中的split实现方法,下面这个方法够简洁

string.split = function(s, p)

    local rt= {}
    string.gsub(s, '[^'..p..']+', function(w) table.insert(rt, w) end )
    return rt

end …

阅读全文

CentOS 7 主机名大小字母的问题

在 三 06 三月 2019 发布于 TECH SKILLS 分类 • 标签为 主机名, hostname, linux, centos, 7 • 1 min read

CentOS 7 以后命名主机名,需要用到hostnamectl命令,具体用法如下:

 # hostnamectl set-hostname TestHostname

但这个命令会将所有字母转换成小写字母,也就是最后的主机名实际是testhostname
如果我们还是想要驼峰规则的主机名怎么办。
这样就可以了

# hostnamectl --static set-hostname TestHostname

Linux Mint 19 修改系统菜单字体

在 一 25 二月 2019 发布于 TECH SKILLS 分类 • 标签为 系统, 字体, linux, mint • 1 min read

在装好LinuxMint 19系统之后,对其做一番美化,让自己身心愉悦,那是必须的。所以我比较习惯与使用这个主题Adapta-Nokto,然后字体再修改为文泉驿等宽字体,这是初步的美化,不过即便只做了这两步,使用体验就已经得到大幅的提升。

安装主题其实很简单,只是安装好之后,如果不修改软件源的话,那么你下载任何东西都会很慢的,修改软件源当然可以在命令行下到/etc/apt/目录下进行修改,但更简单的是直接点几下就可以了,操作步骤如下:

  1. 菜单
  2. 系统管理
  3. 软件源

然后直接选择自己最合适的就可以了。

下面主要说一下,修改字体的坑,普通修改字体,也就是在系统菜单里面,找到对应设置字体的地方就可以了:菜单->首选项->字体,但这样你修改之后会发现,只有窗口字体生效,而系统菜单,登录界面的字体仍然没变,这就需要用到font-manager这个工具了,首先还是需要安装这个工具:

  1. 直接使用Mint自带的软件管理器安装就可以了。
  2. 安装完成后,打开这个工具。
  3. 禁用所有以 …

阅读全文

kvm虚拟机系统的高分辨率调整

在 四 21 二月 2019 发布于 TECH SKILLS 分类 • 标签为 kvm, 分辨率, linux, mint • 1 min read

最近在服务器中用KVM虚拟机折腾Linux Mint, 因为对KVM并不是很熟悉,所以折腾了挺久。这里记录一下,遇到的其中一个问题。

系统的安装其实挺简单,但是在安装好之后发现虚拟机的最大分辨率也只有1024X768,无法再调整到更高。

经过一番查询之后,才知道分辨率与创建虚拟机时所设置的显存有关。

默认情况下,显存设置为16MB,所以分辨率最高只能到1024X768,具体代码如下:

    <video>
      <model type='cirrus' vram='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>

我们需要将vram调整得大一些,但是具体应该调整为多少呢?

以4K分辨率(3840 x 2160)为例:

3840 x 2160 …

阅读全文

chrome 73 released 自动画中画 支持硬件媒体按钮

在 一 11 二月 2019 发布于 TECH INFO 分类 • 标签为 chrome, 浏览器, 新版本, beta • 1 min read

桌面端Chrome浏览器在即将到来的版本更迭中有望获得一系列新的功能,我们从各种Commits、媒体发掘的实验性功能以及Canary通道都能一瞥这些新功能,包括可跟随系统的原生黑暗主题,高性能的“Never-Slow Mode”和标签预览等等。今天Chrome 73刚刚升级至Beta通道,预计在未来几周内会发布稳定版。Chrome 73中最值得注意的新功能包括支持硬件多媒体按钮,对PWA应用的自动画中画功能,以及画中画功能中跳过广告等等。

支持硬件多媒体按钮

用户将能够通过键盘上的多媒体键控制 Chrome 中播放的音视频内容,指令包括跳过播放列表、播放、暂停、前一曲目、下一曲目、前后向滚动等。

img

这是一种 Chrome 级别的按键支持,而不是标签级别,这意味着无论 Chrome 浏览器是在操作系统的前台还是最小化在后台,用户对多媒体键的操作都能生效。该多媒体键功能依赖于 Media Session API,开发人员可以使用它来控制浏览器中的媒体播放,还可以自定义多媒体键的交互。 多媒体交互

可跟随系统的黑暗主题

现在开始跟随您的系统范围主题设置,这意味着如果您在Windows 10中选择Dark Theme,您的Chrome浏览器也会立即切换到Dark模式。这一变化是谷歌努力与Windows 10更紧密合作的最新举措,包括支持原生Windows 10通知功能,致力于Windows …


阅读全文

输出重定向到文件的时效性

在 一 14 一月 2019 发布于 TECH SKILLS 分类 • 标签为 shell, linux, file • 1 min read

在做一个监控脚本时,需要将结果输出到一个文件,然后另外一个脚本来读取该文件的内容作为结果进行判断。
经过测试发现,shell中的命令行重定向功能有个特点,即在命令一开始执行时,就已开始创建了对应的文件,下面举个例子来进行说明:

# test.py > /tmp/test.log

这条命令中,假如该命令执行总共需要30秒,而在该命令一开始执行时,/tmp/test.log就已创建,而不是等到命令执行完成再创建。而这时如果有执行频率较高,在30秒内去检查/tmp/test.log文件内的内容的话,有可能是检查不到正确的内容的。
所以我们在使用重定向功能时需要注意到这点,创建文件的时间是否就是你所设想的时间呢?


install php5.6 on centos6

在 三 09 一月 2019 发布于 TECH SKILLS 分类 • 标签为 php, centos6, php extension • 1 min read

本次安装系统环境为Centos6 x86_64

# cd /usr/local/src
# wget http://cn2.php.net/distributions/php-5.6.39.tar.gz
# tar xzf php-5.6.39.tar.xz

安装依赖包

# yum install gcc gcc-c++ bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel

开始编译安装(这里先别急着去执行,先往文章后面看看)

# ./configure \
--prefix=/usr/local/php …

阅读全文

Nginx反向代理配置

在 三 19 十二月 2018 发布于 TECH SKILLS 分类 • 标签为 nginx, reverse, proxy, 反向代理 • 1 min read

这里主要记录Nginx服务器的反向代理proxy_pass配置方法中容易踩坑的地方,就是经常被提到的url的/问题的相关说明,需要的朋友可以参考下

普通反向代理

Nginx的普通的反向代理配置还是比较简单的,如:

location ~ /*
{
    proxy_pass http://192.168.1.12:8080;
}

或者可以

location /
{
    proxy_pass http://192.168.1.12:8080;
}

如果要配置一个相对复杂的反向代理,比如,将url中以/test/开头的请求转发到后台对应的某台server上
可以在Nginx里设置一个变量,来临时保存/test/后面的路径信息

location ^~ /test/
{
    if ($request_uri ~ /test/(\d+)/(.+))
    {
        set $id $1;
        set $params $2;
    }
    proxy_pass http://backend$id.domain …

阅读全文