Centos 7 安装并配置monit

Monit 是一个开源的linux 程序,用来监控程序,并且在必要的时候重启.

在centos上安装的非常的简单.

首先需要安装epel repo:

yum install epel-release

然后就可以安装monit了

yum install monit

将monit加入开机自启动并且start monit进程:

systemctl enable monit
systemctl start monit

查看monit 状态:

systemctl status monit

更多

WebNX Utah机房E3-1275V5 1TB SSD服务器benchmark

在webhostingtalk上看到webnx 有一款机器在on sale,配置相当不错,而我又是webnx 的超级粉,立马拿下替换了原来旧的机器,新机器的配置如下:

Intel Xeon E3-1275v5 quadcore 3.6ghz
64gb ddr4 ECC ram
1TB Enterprise SSD
/29 5x usable ip's
30Tb over 1gbps
$65 ** limited time until we burn up the stock on hand!

实话实说,这个机器还是非常有新引力的,再加上webnx 100%的SLA 和 super connected network, 真的是非常爽的价格.

我准备用它来做ESXi 新的vCSA 主控. 

在deploy ESXi之前,先来测试一下这台机器的硬件和network. 

更多

Supermicro 服务器IPMI 安装CentOS问题

现在大部分的美国服务商都是使用的supermicro 的服务器,supermicro 一般都自带IPMI.

但是在使用Intel 的E3 CPU 的时候,确会出现这样那样的问题。

总体来说,对于E3 的CPU,supermicro 有两个系列, X10 和 X11,分别专门应该E3-V3,v4 和E3-V5,V6的CPU,问题也由此而来

  1. 安装centos 7 的时候,预加载完成以后就直接黑屏,这是因为IPMI 自带的Aspeed 显卡驱动的问题,在选择安装centos 7 的时候,press tab, 在kernel 的启动选项里面append nomodeset 就可以了
  2. 除了黑屏问题,还有显示soft lock up 等等,这个也是显卡的问题,需要在kernel 的启动选项里面append nomodeset
  3. https://serverfault.com/questions/889868/centos-installer-hangs-through-ipmi, 如果出现这个页面中的问题,或者hangs on start login service,又或者hangs on XXXXX zRAM什么的,那么真的无解,只能安装centos 7 比较老的版本,比如说1511
  4. 有些以5结尾的E3 的cpu,比如说E3-1245V3,E3-1275V5等等 自带显卡,那么也会和ipmi 的显卡aspeed 2400/2500 冲突,也需要在kernel 的启动选项里面选择append nomodeset

 

国外网站关于此问题的讨论:

https://unix.stackexchange.com/questions/353896/linux-install-goes-to-blank-screen

supermicro 官方给的解决方案:

https://www.supermicro.org.cn/support/faqs/faq.cfm?faq=30162

Fedora 也遇到了这样的问题:

https://mangolassi.it/topic/18685/fedora-29-server-or-28-install-is-stuck

MYSQL Error 2061

在phpmyadmin中更新password 时,选错了auth 方式,没有选mysql-native-password, 选了一个sha256 什么的。。再用root登录,就立马出现了 error 2061

后来google 了好久,才发现在mysql 5.X 中,默认的auth 方式是mysql-native-password方式,在mysql 8 中一般会选用sha256什么的。。

现在问题的关键是root 无法登陆,这是因为root 的auth 方式被更改为了 sha256-password 的方式。 知道了问题的原因,解决起来就好说了

解决步骤:

1) 关闭mysql 服务

service mysql stop

2) start mysql without password auth

mysqld_safe --skip-grant-tables &

3) 重启mysql 服务

service mysql start

4)用root 登录

mysql -uroot -p

5) 更新root 的密码和auth 方式

mysql 5.7.5 及以前

mysql> use mysql;
mysql> update user set password=PASSWORD("NEW-ROOT-PASSWORD"), plugin="mysql_native_password" where User='root';
mysql> flush privileges;
mysql> quit

6)关闭mysql 服务

service mysql stop

7) 启动mysql 服务

service mysql start

 

 

 

AWS EC2更改hostname

现在的很多教程都是参考官方的wiki写的,但是wiki里面写的很清楚支持Amazon Linux,各大教程改个标题就说Ubuntu 这么改,centos 这么改等等。。

对于正常的主机,确实是改下/etc/hostname就可以显示我们想要的主机名的,但是AWS EC2 比较奇葩,hostname 都是开机时自动从云端获取并写道/etc/hostname中,这就是为什么直接修改/etc/hostname无效的原因

对于centos 来说,要用hostnamectl命令来修改hostname

sudo hostnamectl set-hostname --static www.iamhippo.com

 

 

Smokeping 常用操作

在centos上安装了smokeping 以后,我们可能会经常遇到各种问题

  1. 对target进行修改,修改完以后,我们需要重启smokeping service ,一般情况下是不需要重启httpd,因为smokeping 的主程序会查看config 的timestamp,如果有变化就会重新读取config 配置文件,但是如果你把target 通过include 的方式包含在config当中,那么即使你修改了target文件,但是config 文件的timestamp 仍然不变。经过测试,解决办法有两个: 要么稍微修改一下config 文件,添加或者删除一些无关紧要的文字,要不然就在重启完smokeping以后再重启一下httpd服务
  2. 还有一个经常见的问题就是slave 的图没有数据,这个一般是权限的问题。因为slave 端的数据,是slave 端通过http call,写入master 端的,而master 端完成此项任务的是httpd,因此httpd 要对 data 文件夹下面的target 的文件夹要有写入权限。实现这个目标,可以有多种实现的办法,一种办法是利用getfacl 和 setfacl 来设置apache 对这些目录单独的权限,另外一种办法是把这些文件的group 设置为apache,并且给apache 写入的权限 chmod g+w *
  3. 查看rrd文件里面的是否用数据,例如可以用rrdtool fetch Akamai1~10.10.16.111.rrd AVERAGE 命令查看master端slave提交的rrd文件