使用awk统计日志文件中出现频次最多的前10个ip
awk '{s[$1]+=1}END{for (i in s){print i,s[i]}}' access.log|sort -nrk2|head -n 10
注意:awk中的print会自动输出换行符,printf不会自动输出换行符
awk '{s[$1]+=1}END{for (i in s){print i,s[i]}}' access.log|sort -nrk2|head -n 10
注意:awk中的print会自动输出换行符,printf不会自动输出换行符
sort命令将文件/文本按行排序,可以从指定文件或标准输入中读数据,参数详解如下:
-n:按数值进行比较,如果不设置这个参数将按ASCII码值进行比较
-r:顺序反转,也就是倒序
-k:按第几个字段排序,字段下标从1开始
-t:指定字段分隔符
-u:去重,只输出排序字段相同的值第一次出现的行
示例:sort -nrk1 access.log
#system config
#systemctl stop firewalld & systemctl disable firewalld
#hostnamectl set-hostname server1 (must reconnect ssh for SecureCRT)
#chmod +x /etc/rc.d/rc.local
#configure hosts
echo '200.200.200.51 server1' >> /etc/hosts
echo '200.200.200.52 server2' >> /etc/hosts
echo '200.200.200.53 server3' >> /etc/hosts
umount /dev/centos/home
lvremove /dev/centos/home
lvextend -l +100%FREE /dev/centos/root
xfs_growfs /dev/centos/root
sed -i '/^/dev/mapper/centos-home/d' /etc/fstab
修改系统配置
chmod +x /etc/rc.d/rc.local
echo "ulimit -n `cat /proc/sys/fs/nr_open`" >> /etc/rc.local
echo "ulimit -u 1048576" >> /etc/rc.local
echo "source /etc/profile" >> /etc/rc.local
echo "* soft nofile `cat /proc/sys/fs/nr_open`" >> /etc/security/limits.conf
echo "* hard nofile `cat /proc/sys/fs/nr_open`" >> /etc/security/limits.conf
echo "* soft nproc 1048576" >> /etc/security/limits.conf
echo "* hard nproc 1048576" >> /etc/security/limits.conf
sed -ri "s/^[^#]/#\0/" /etc/security/limits.d/*-nproc.conf
master:192.168.15.154
slave:192.168.15.150
vip:192.168.15.200
操作系统版本:CentOS 6.3
mysql版本:5.6.37
keepalived版本:1.2.7
1、在master的/etc/my.cnf的[mysqld]下面添加如下配置
touch ~/.my.cnf
chmod 600 ~/.my.cnf
echo '[mysqldump]' >> ~/.my.cnf
echo 'user=root' >> ~/.my.cnf
echo 'password=123456' >> ~/.my.cnf
mysqldump -R $database > xxx.sql
PS:$database替换成数据库名
docker有两个配置文件可以设置log-driver,如果这两个配置文件都没有设置log-driver,则默认的log-driver为json-file:
1、/etc/sysconfig/docker中的OPTIONS变量,docker启动时会使用这个变量中的值作为命令行参数,可以通过命令:ps -ef|grep dockerd,查看dockerd-current进程的命令行参数(redhat和centos安装docker时,OPTIONS的默认值:--selinux-enabled --log-driver=journald --signature-verification=false
)
2、/etc/docker/daemon.json(默认值:{}
)
sed -i "s#OPTIONS='#OPTIONS='-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock #" /etc/sysconfig/docker
systemctl restart docker
PS:
-H tcp://0.0.0.0:2375表示开启远程客户端API
-H unix:///var/run/docker.sock表示开启本地客户端API
如果OPTIONS中两个都不添加,则默认会开启本地客户端API,如果OPTIONS中只添加了远程客户端API,则只会开启远程客户端API,而不会开启本地客户端API,这样在本地无法使用docker命令操作docker服务,所以OPTIONS添加远程客户端API的时候,也要同时添加本地客户端API
创建镜像
docker build -t xxx/cloud-eureka:1.0.0 .
删除镜像
docker rmi ${IMAGE_ID}
删除所有临时镜像
docker rmi `docker images -f "dangling=true" -q`
删除指定关键字的镜像
docker images|grep 'xxx'|grep '1.0.0'|awk '{print $3}'|xargs docker rmi