centos faillog?centos 8
本篇文章给大家谈谈centos faillog,以及centos 8对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
Centos7.x Redis6.2.5 Cluster搭建
官方地址:
前提条件:
Redis Cluster不使用一致性哈希,而是使用不同形式的分片每个键在概念上都是我们所谓的哈希槽的一部分。
Redis Cluster有 16384个哈希槽,计算哈希值是多少给定密钥的插槽,我们只需取密钥的 CRC16模 16384。
Redis集群中的每个节点都负责哈希槽的一个子集,例如,您可能有一个包含 3个节点的集群,其中:
节点 A包含从 0到 5500的哈希槽。
节点 B包含从 5501到 11000的哈希槽。
节点 C包含从 11001到 16383的哈希槽。
如果报错 ERR This instance has cluster support disabled的话,说明集群未开启。
本例子是在一台服务器上面做的实验,只是创建了6个目录,启了6个redis-server而已。
创建一个 redis.conf每个目录中的文件,从 7000到 7005。作为配置文件的模板,只需使用上面的小示例,但一定要更换端口号 7000使用正确的端口号根据目录名。
通过 ps aux|grep redis查看redis的启动情况。
如果不想通过配置和执行来创建Redis集群如上所述,手动单个实例,有一个更简单的系统(但您不会了解相同数量的操作细节)。
只需检查 utils/create-clusterRedis发行版中的目录。有一个脚本叫做 create-cluster里面(与目录同名它包含在)中,它是一个简单的 bash脚本。为了开始一个有 3个主节点和 3个从节点的 6节点集群只需输入以下内容命令:
回复 yes在第 2步中,当 redis-cli实用程序要你接受集群布局。
您现在可以与集群交互,第一个节点将从端口 30001开始默认情况下。完成后,使用以下命令停止集群:
请阅读 README在此目录中以获取有关如何操作的更多信息运行脚本。
create-cluster.sh
集群信息
集群节点
我上面的例子我们可以看出,设置的key会被分配到不同的实例去。
现在很多的sdk都支持move,例如:phpredis。
我们先查看下当前的集群情况。
目前 7000, 7001, 7002是 master角色, 7003, 7004, 7005是 slave角色。
然后我们将 7001这个端口的redis服务的进程杀掉。
7004.log日志,发现 7001主挂了,然后将自己升级为master。
查询当前的集群状态如下:
我们可以看出, 7004升级了 master, 7001是 fail状态。
启动 7001的redis服务。
7001.log中可以发现,自己变成了 slave。
此时我们再来看下集群情况:
目前 7000, 7002, 7004是 master角色, 7001, 7003, 7005是 slave角色,自动进行了故障切换。
如果配置了 requirepass的话, masterauth必须需要配置,不然 master与 slave不能自动切换。
修改配置文件 redis.conf中的 cluster-enabled参数的值为 yes并把参数前#去除,重启Redis服务器。
在命令尾部追加 2>/dev/null即可。
我们继续在 cluster-test目录下,创建 7006目录,配置和之前的一样,不同就是端口以及日志路径,然后启动服务即可。
看下最新的集群情况
添加一个 7006的从节点。
在 cluster-test目录下,创建 7007目录,配置和之前的一样,不同就是端口以及日志路径,然后启动服务即可。
看下最新的集群情况
从上面集群情况可以看出了问题,新增加的 7006, 7007的虽然增加到了集群里面,但是没有分配slot。
分配后的集群情况
缩容前:
将 7006的slot给了 7000。
缩容后:
删除了 7006, 7007后的集群情况
通过yum安装fail2ban,缺少jail.conf怎么办
为了在CentOS或RHEL上安装fail2ban,首先设置EPEL仓库,然后运行以下命令。$sudoyuminstallfail2ban在Fedora上安装fail2ban,简单地运行以下命令:$sudoyuminstallfail2ban在Ubuntu,Debian或LinuxMint上安装fail2ban:$sudoapt-getinstallfail2ban为SSH服务器配置Fail2ban现在你已经准备好了通过配置fail2ban来加强你的SSH服务器。你需要编辑其配置文件/etc/fail2ban/jail.conf。在配置文件的“[DEFAULT]”区,你可以在此定义所有受监控的服务的默认参数,另外在特定服务的配置部分,你可以为每个服务(例如SSH,Apache等)设置特定的配置来覆盖默认的参数配置。在针对服务的监狱区(在[DEFAULT]区后面的地方),你需要定义一个[ssh-iptables]区,这里用来定义SSH相关的监狱配置。真正的禁止IP地址的操作是通过iptables完成的。下面是一个包含“ssh-iptables”监狱配置的/etc/fail2ban/jail.conf的文件样例。当然根据你的需要,你也可以指定其他的应用监狱。$sudovi/etc/fail2ban/jail.local[DEFAULT]#以空格分隔的列表,可以是IP地址、CIDR前缀或者DNS主机名#用于指定哪些地址可以忽略fail2ban防御ignoreip=127.0.0.1172.31.0.0/2410.10.0.0/24192.168.0.0/24#客户端主机被禁止的时长(秒)bantime=86400#客户端主机被禁止前允许失败的次数maxretry=5#查找失败次数的时长(秒)findtime=600mta=sendmail[ssh-iptables]enabled=truefilter=sshdaction=iptables[name=SSH,port=ssh,protocol=tcp]sendmail-whois[name=SSH,dest=your@email.com,sender=fail2ban@email.com]#Debian系的发行版logpath=/var/log/auth.log#RedHat系的发行版logpath=/var/log/secure#ssh服务的最大尝试次数maxretry=3根据上述配置,fail2ban会自动禁止在最近10分钟内有超过3次访问尝试失败的任意IP地址。一旦被禁,这个IP地址将会在24小时内一直被禁止访问SSH服务。这个事件也会通过sendemail发送邮件通知。一旦配置文件准备就绪,按照以下方式重启fail2ban服务。在Debian,Ubuntu或CentOS/RHEL6:$sudoservicefail2banrestart在Fedora或CentOS/RHEL7:$sudosystemctlrestartfail2ban为了验证fail2ban成功运行,使用参数'ping'来运行fail2ban-client命令。如果fail2ban服务正常运行,你可以看到“pong(嘭)”作为响应。$sudofail2ban-clientpingServerreplied:pong测试fail2ban保护SSH免遭暴力破解攻击为了测试fail2ban是否能正常工作,尝试通过使用错误的密码来用SSH连接到服务器模拟一个暴力破解攻击。与此同时,监控/var/log/fail2ban.log,该文件记录在fail2ban中发生的任何敏感事件。$sudotail-f/var/log/fail2ban.log根据上述的日志文件,Fail2ban通过检测IP地址的多次失败登录尝试,禁止了一个IP地址192.168.1.8。检查fail2ban状态并解禁被锁住的IP地址由于fail2ban的“ssh-iptables”监狱使用iptables来阻塞问题IP地址,你可以通过以下方式来检测当前iptables来验证禁止规则。$sudoiptables--list-nChainINPUT(policyACCEPT)targetprotoptsourcedestinationfail2ban-SSHtcp--0.0.0.0/00.0.0.0/0tcpdpt:22ChainFORWARD(policyACCEPT)targetprotoptsourcedestinationChainOUTPUT(policyACCEPT)targetprotoptsourcedestinationChainfail2ban-SSH(1references)targetprotoptsourcedestinationDROPall--192.168.1.80.0.0.0/0RETURNall--0.0.0.0/00.0.0.0/0如果你想要从fail2ban中解锁某个IP地址,你可以使用iptables命令:$sudoiptables-Dfail2ban-SSH-s192.168.1.8-jDROP当然你可以使用上述的iptables命令手动地检验和管理fail2ban的IP阻塞列表,但实际上有一个适当的方法就是使用fail2ban-client命令行工具。这个命令不仅允许你对"ssh-iptables"监狱进行管理,同时也是一个标准的命令行接口,可以管理其他类型的fail2ban监狱。为了检验fail2ban状态(会显示出当前活动的监狱列表):$sudofail2ban-clientstatus为了检验一个特定监狱的状态(例如ssh-iptables):$sudofail2ban-clientstatusssh-iptables上面的命令会显示出被禁止IP地址列表。为了解锁特定的IP地址:$sudofail2ban-clientsetssh-iptablesunbanip192.168.1.8注意,如果你停止了Fail2ban服务,那么所有的IP地址都会被解锁。当你重启Fail2ban,它会从/etc/log/secure(或/var/log/auth.log)中找到异常的IP地址列表,如果这些异常地址的发生时间仍然在禁止时间内,那么Fail2ban会重新将这些IP地址禁止。设置Fail2ban自动启动一旦你成功地测试了fail2ban之后,最后一个步骤就是在你的服务器上让其在开机时自动启动。在基于Debian的发行版中,fail2ban已经默认让自动启动生效。在基于Red-Hat的发行版中,按照下面的方式让自动启动生效。在CentOS/RHEL6中:$sudochkconfigfail2banon在Fedora或CentOS/RHEL7:$sudosystemctlenablefail2ban
CentOS下对SSD寿命的检查和健康判断详解
整个网上只有 intel的 SSD查看硬盘寿命的资料,象我们这种穷人,只能使用的起 Crucial和 OCZ的用户来讲是太不公平了.象我要透过 RAID卡就真没法子看其它商家的 SSD的寿命了吗?
研究了一下,所有查看 SSD的命令,只要要透过 RAID的,都需要借助 MegaCli和 smartCtl获得 ssd盘使用情况.认真研究了一下,目前我使用的
RAID卡是LSI Logic/ Symbios Logic MegaRAID SAS 1078和 2108这二种.使用通常的 MegaCli来查询:
这个是的下载地址:
Centos5的 MegaCli
Centos6的 MegaCli
整个过程分二步,第一步是从过 RAID卡来取得下面硬盘的信息.接下来使用 smartCtl来进行硬盘详细信息的显示.
使用 MegaCli来取得 RAID卡下硬盘的信息:
然后使用下面的命令:
/opt/MegaRAID/MegaCli/MegaCli64-PDList-aALL
这样可以查出 RAID卡下面的内容.会显示如下:
Enclosure Device ID: 252
Slot Number: 7
Device Id: 28
Sequence Number: 2
Media Error Count: 0
Other Error Count: 1
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 119.242 GB [0xee7c2b0 Sectors]
Non Coerced Size: 118.742 GB [0xed7c2b0 Sectors]
Coerced Size: 118.277 GB [0xec8e000 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x1e394d57aa996b80
Connected Port Number: 7(path0)
Inquiry Data: 0000000011070303A99EC300-CTFDDAC128MAG 0007
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 6.0Gb/s
Link Speed: 1.5Gb/s
Media Type: Solid State Device
注意上面几个地方,上面会输出很多这样的信息,只有 Media Type: Solid State Device.表示这是 SSD.其中 Device Id: 28这个需要记下来.这个过一会使用 smartctl查询时会需要.我们可以见到上面都显示了硬盘的型号:Inquiry Data: 0000000011070303A99EC300-CTFDDAC128MAG 0007.另外还有一个标志告诉你这个 SSD是不是正常的 Firmware state: Online,Spun Up这个选项,所以如果你做 SSD的监控报警,直接监控这个参数基本就行了.
使用 smartctl来取得 SSD硬盘的详细信息
要注意,不同厂商不同型号磁盘的信息不同.象 intel的硬盘信息就不介绍了.下面是查询所使用的命令.其中-a是让显示所有的信息出来.-d是用来设置硬盘的.这时需要注意不同的 RAID卡所使用的接口可能不一样,所以可能会有小的不相同.
比如 intel的硬盘,直接使用-d megaraid,27就能正常了.但我使用了上面的 raid卡后,需要指定 sat这个参数,就变成象下面这样了:
smartctl-a-d sat+megaraid,27/dev/sdb1-s on
上面这时的 sat是指由 SCSI转成 ATA的设备,可以加象 scsi,ata之类的参数.
这时,会显示如下的信息:
Model Family: Crucial/Micron RealSSD C300/C400
Device Model: C300-CTFDDAC128MAG
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 100 100 000 Pre-fail Always- 0
5 Reallocated_Sector_Ct 0x0033 100 100 000 Pre-fail Always- 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always- 5572
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always- 3
170 Grown_Failing_Block_Ct 0x0033 100 100 000 Pre-fail Always- 0
171 Program_Fail_Count 0x0032 100 100 000 Old_age Always- 0
172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always- 0
173 Wear_Levelling_Count 0x0033 090 090 000 Pre-fail Always- 536
174 Unexpect_Power_Loss_Ct 0x0032 100 100 000 Old_age Always- 1
181 Non4k_Aligned_Access 0x0022 100 100 000 Old_age Always- 0 0 0
183 SATA_Iface_Downshift 0x0032 100 100 000 Old_age Always- 0
184 End-to-End_Error 0x0033 100 100 000 Pre-fail Always- 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always- 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always- 0
189 Factory_Bad_Block_Ct 0x000e 100 100 000 Old_age Always- 250
195 Hardware_ECC_Recovered 0x003a 100 100 000 Old_age Always- 0
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always- 0
197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always- 0
198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline- 0
199 UDMA_CRC_Error_Count 0x0036 100 100 000 Old_age Always- 0
202 Perc_Rated_Life_Used 0x0018 090 090 000 Old_age Offline- 10
206 Write_Error_Rate 0x000e 100 100 000 Old_age Always- 0
如果是 OCZ的:
Device Model: OCZ-AGILITY3
Serial Number: OCZ-1OX963Q8B5X2V684
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 086 086 050 Pre-fail Always- 135388659
5 Reallocated_Sector_Ct 0x0033 100 100 003 Pre-fail Always- 9
9 Power_On_Hours 0x0032 100 100 000 Old_age Always- 265772576277126
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always- 15
171 Unknown_Attribute 0x0032 000 000 000 Old_age Always- 9
172 Unknown_Attribute 0x0032 000 000 000 Old_age Always- 0
174 Unknown_Attribute 0x0030 000 000 000 Old_age Offline- 13
177 Wear_Leveling_Count 0x0000 000 000 000 Old_age Offline- 1
181 Program_Fail_Cnt_Total 0x0032 000 000 000 Old_age Always- 9
182 Erase_Fail_Count_Total 0x0032 000 000 000 Old_age Always- 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always- 0
194 Temperature_Celsius 0x0022 030 030 000 Old_age Always- 30(Lifetime Min/Max 30/30)
195 Hardware_ECC_Recovered 0x001c 120 120 000 Old_age Offline- 135388659
196 Reallocated_Event_Count 0x0033 100 100 003 Pre-fail Always- 9
201 Soft_Read_Error_Rate 0x001c 120 120 000 Old_age Offline- 135388659
204 Soft_ECC_Correction 0x001c 120 120 000 Old_age Offline- 135388659
230 Head_Amplitude 0x0013 100 100 000 Pre-fail Always- 100
231 Temperature_Celsius 0x0013 100 100 010 Pre-fail Always- 0
233 Media_Wearout_Indicator 0x0000 000 000 000 Old_age Offline- 2531
234 Unknown_Attribute 0x0032 000 000 000 Old_age Always- 3465
241 Total_LBAs_Written 0x0032 000 000 000 Old_age Always- 3465
242 Total_LBAs_Read 0x0032 000 000 000 Old_age Always- 2030
SSD是否健康的参数分析:
注意这时的使用寿命不在是象 intel ssd的 Media_Wearout_Indicator这个参数(当然 OCZ也有,在 Crucial就变成了Perc_Rated_Life_Used).但其实我们要看 SSD是否健康,主要是要通过 Wear Leveling Count(颗粒平均擦写次数)这个参数和Grown Failling Block Ct这个参数.
注意看下面二行:
170 Grown_Failing_Block_Ct 0x0033 100 100 000 Pre-fail Always- 0
173 Wear_Levelling_Count 0x0033 090 090 000 Pre-fail Always- 536
上面二个参数是关键:
Wear Levelling Count(颗粒平均擦写次数):先讲这个参数.更加重要.先声明这个硬盘是使用了一年的 SSD硬盘.图中显示的数据为536,即这块128G的硬盘的全盘写入/擦除(P/E)数为536次,显示还有 90%的寿命.所以大约这个硬盘使用的闪存颗粒的寿命为 5000多次的样子.536约为 5000的 10%,所以此项值为90(CA). Grown Failing Block Count(使用中新增坏块数):此项代表 SSD的闪存颗粒在使用时出现的坏块(类似于HDD的坏道)数量,此处数据为 0即尚未有出现坏块,若你命不好.新购买回来 SSD在正常使用时,很短的时间内这个数据产生较大变化,那代表盘可能有问题,早点找售后服务吧.
MegaCli常用参数组合介绍:
MegaCli-cfgdsply-aALL| grep Error【正常都是0】
MegaCli-LDGetProp-Cache-LALL-a0【写策略】
MegaCli-cfgdsply-aALL| grep Memory【内存大小】
MegaCli-LDInfo-Lall-aALL【查RAID级别】
MegaCli-AdpAllInfo-aALL【查RAID卡信息】
MegaCli-PDList-aALL【查看硬盘信息】
MegaCli-AdpBbuCmd-aAll【查看电池信息】
MegaCli-FwTermLog-Dsply-aALL【查看RAID卡日志】
MegaCli-adpCount【显示适配器个数】
MegaCli-AdpGetTime aALL【显示适配器时间】
MegaCli-AdpAllInfo-aAll【显示所有适配器信息】
MegaCli-LDInfo-LALL-aAll【显示所有逻辑磁盘组信息】
MegaCli-PDList-aAll【显示所有的物理信息】
MegaCli-AdpBbuCmd-GetBbuStatus-aALL|grep Charger Status【查看充电状态】
MegaCli-AdpBbuCmd-GetBbuStatus-aALL【显示BBU状态信息】
MegaCli-AdpBbuCmd-GetBbuCapacityInfo-aALL【显示BBU容量信息】
MegaCli-AdpBbuCmd-GetBbuDesignInfo-aALL【显示BBU设计参数】
MegaCli-AdpBbuCmd-GetBbuProperties-aALL【显示当前BBU属性】
MegaCli-cfgdsply-aALL【显示RAID卡型号,RAID设置,DISK相关信息】
磁带状态的变化,从拔盘,到插盘的过程中:
Device|Normal|Damage|Rebuild|Normal
Virtual Drive|Optimal|Degraded|Degraded|Optimal
Physical Drive|Online|Failed Unconfigured|Rebuild|Online