记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题。
Azkaban 看这一篇就够了!任务调度平台的搭建,使用,以及API开发当你的才华还撑不起你的野心时,那你就应该静下心来学习。每次脑子都会有很多想法,每次做了之后,还是觉得需要沉淀下来提升自己更加重要。著名的红叶子理论:一个人职业的成功不在于红叶子的数目多少,而在于他是否具备一片特别硕大的红叶子,这片特别硕大的红叶子不是与生俱来,需要个人的不断努力,准确地识别到最适合发展的红叶子。目录大纲0 写在前面的话1.1 初识Azkaban1.2 为什么需要任务调度器1.3 常见几种任务调度器1.4 Azkaban和Hadoop的关系1.5 Azkaban 底层原理2 Azkaban任务调度平台搭建3 Azkaban Web可视化平台详细介绍以及使用4 Azkaban API 功能预览4.1 对接Azkaban,进行二次开发,使其嵌入到系统中5 平台搭建中的问题总结1.1 初识Azkaban起源:Linkedin开源的一个批量工作流调度器特征:一个工作流内,多个作业可以按照特定的顺序执行依赖关系:作业之间的顺序关系依靠key-value的形式来建立依赖关系可视界面:提供可视化web界面1.2 为什么需要任务调度器定时任务的出现,可谓大大提高了工作效率。最简单的定时任务,就是你手机的闹钟,你给它一个定时任务,到了指定时间它就叫醒你。程序当...
grok语法过滤Centos7 ssh登陆日志方法日志内容如下:Apr 19 16:09:30 92-com sshd[2749]: Did not receive identification string from 101.200.56.162 port 53456Apr 19 16:10:26 92-com sshd[2756]: Bad protocol version identification 'GET /console/login/LoginForm.jsp HTTP/1.1' from 101.200.56.162 port 42608Apr 19 17:07:05 92-com sshd[2852]: Accepted password for tt from 211.137.70.64 port 7182 ssh2过滤语法:%{MONTH:yuefen} %{MONTHDAY:riqi} %{TIME:shijian} %{HOSTNAME:zhoujiming} .* %{IPV4:remoteip} .* 过滤后数据如下:{
"yuefen": [
[
"Apr"
]
],
"riqi": [
[
"19"
]
],
"shijian": [
[
"08:41:40"
]
],
"HOUR": [
[
"08"
]
],
"MINUTE": [
[
"41"
]
],
"SECOND": [
[
"40"
]
],
"zhoujiming": [
[
"92-com"
]
...
filebeat配置多日志并输出到elastic不同index索引filebeat将 /var/log/secure与httpd的日志内容输出到ealsticsearch7.11.2的不同索引。filebeat.inputs: - type: log enabled: true paths: - /var/log/secure include_lines: ['sshd', 'sudo'] tags: ["secure-log"] #自定义标签字段 fields: index: "ssh" - type: log enabled: true paths: - /www/wwwlogs/httpd-ssl_access_log# include_lines: ['sshd', 'sudo'] tags: ["httpd-log"] #自定义标签字段 fields: index: "httpd"setup.template.settings: index.number_of_shards: 1# output.console:# pretty: true# enable: trueoutput.elasticsearch: #指定ES的配置,并指定不同的索引 hosts: ["127.0.0.1"] username: "elastic"&...
filebeat采集一台服务器中的不同日志,并将日志放到ES中的不同索引中filebeat.inputs:- type: log enabled: true paths: - /usr/local/tomcat/apache-tomcat-8.5.53/logs/catalina.out tags: ["tomcat"] fields: index: "tomcat"- type: log enabled: true paths: - /usr/local/apollo/apollo-adminservice.log tags: ["apollo-adminservice"] fields: index: "apollo_admin"- type: log enabled: true paths: - /usr/local/apollo/apollo-configservice.log tags: ["apollo-configservice"] fields: index: "apollo_conf"output.elasticsearch: #指定ES的配置 hosts: ["192.168.20.248:9200"] indices: - index: "filebeat-java-1-tomcat-%{+YYYY-MM}" when.contains: fields: index: "tomcat" &...
linux shell脚本查找重复行/查找非重复行/去除重复行/重复行统计去除重复行sort file |uniq
查找非重复行sort file |uniq -u
查找重复行sort file |uniq -d
统计sort file | uniq -c
去除重复的行,并生成新的文件sort file |uniq > new_file
filebeat+kafka+logstash收集日志到es使用kibana展示实现逻辑filebeat ==>> kafka <<== logstash ==>> elastsearch <== kibana 1. filebeat配置filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/messages
fields:
log_topic: test_kafka
filebeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false
setup.template.settings:
index.number_of_shards: 3
output.kafka:
enable: true
hosts: ["log1:9092"]
version: "2.0.0"
topic: '%{[fields.log_topic]}'
partition.round_robin:
reachable_only: true
worker: 1
required_acks: 1
compression: gzip
compression_level: 4
max_message_bytes: 10000000
processors:
- drop_fields:
fields:
- beat
- host
- input
- source
- offset
- prospector启动服务 2. logstash配置:input {
kafka...
harbor2.0.1安装部署一、下载安装包wget https://github.com/goharbor/harbor/releases/download/v2.0.1/harbor-online-installer-v2.0.1.tgz二、解压tar xf harbor-online-installer-v2.0.1.tgz -C /usr/local/三、配置https访问1.创建目录mkdir /data/harbor/cert -p
cd /data/harbor/cert配置证书颁发机构1.生成CA证书私钥openssl genrsa -out ca.key 40962.生成CA证书openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Shanghai/L=Shanghai/O=soulchild/OU=myharbor/CN=registry.com" \
-key ca.key \
-out ca.crt字段含义:C:国家ST:省份L:城市O:组织单位OU:其他内容CN:一般填写域名配置服务器证书生成私钥openssl genrsa -out registry.com.key 40962.生成证书签名请求(CSR)openssl req -sha512 -new \
-subj "/C=CN/ST=Shanghai/L=Shanghai/O=soulchild/OU=myharbor/CN=registry.com" \
-key registry.com.key \
-out registry.com.csr生成x509 v3扩展文件cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiat...
redis哨兵模式vip三个哨兵配置如下port 26379
daemonize yes
pidfile "/var/run/redis-sentinel.pid"
logfile "/var/log/redis/redis-sentinel.log"
sentinel monitor mymaster 10.0.0.30 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 20000
sentinel parallel-syncs mymaster 1
sentinel client-reconfig-script mymaster /server/scripts/redis_sentinel.shIP漂移脚本每个sentinel节点都需要添加vim /server/scripts/redis_sentinel.sh#!/bin/bash
MASTER_IP=${6}
VIP='10.0.0.25'
NETMASK='24'
INTERFACE='eth0'
MY_IP=`ip a s dev ${INTERFACE} | awk 'NR==3{split($2,ip,"/");print ip[1]}'`
if [ ${MASTER_IP} = ${MY_IP} ]; then
/sbin/ip addr add ${VIP}/${NETMASK} dev ${INTERFACE}
/sbin/arping -q -c 3 -A ${VIP} -I ${INTERFACE}
exit 0
else
/sbin/ip addr del ${VIP}/${NETMASK} dev ${INTERFACE}
exit 0
fi
exit 1redis-sentinel会向脚本传参mymaster observer start 旧主ip 6379 新主ip 6379添加执行权限c...
redis哨兵模式配置Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。环境准备:redis-server:10.0.0.30:6379 主10.0.0.30:6389 从10.0.0.31:6379 从10.0.0.31:6380 从redis-sentinel:10.0.0.30:2637910.0.0.30:2638010.0.0.31:26379配置redis主从参考链接配置sentinelsentinel配置文件:daemonize yes
port 26379
logfile /var/log/redis/redis-sentinel.log
pidfile /var/run/redis-sentinel.pid
sentinel monitor mymaster 10.0.0.30 6379 2
sentinel d...
kafka2.0.1集群部署1.下载安装: wget https://archive.apache.org/dist/kafka/2.0.1/kafka_2.12-2.0.1.tgz
tar xf kafka_2.12-2.0.1.tgz
mv kafka_2.12-2.0.1 /usr/local/kafka 2.配置zookeeper:可参考https://soulchild.cn/1663.html/usr/local/kafka/config/zookeeper.properties3. 创建 /tmp/zookeeper/myid文件echo 1 > /tmp/zookeeper/myid4. 启动zookeepercd /usr/local/kafka/bin
./zookeeper-server-start.sh -daemon ../config/zookeeper.properties 5.配置kafka:文件路径:/usr/local/kafka/config/server.properties修改配置文件:#kafka集群的唯一标识,在改变IP地址,不改变broker.id的话不会影响消费者。
#Kafka在启动时会在zookeeper中/brokers/ids路径下创建一个以broker的id为名称的虚节点,Kafka的健康状态检查就依赖于此节点。
#当broker下线时,该虚节点会自动删除,其他broker或者客户端通过判断/brokers/ids路径下是否有此broker的id来确定该broker的健康状态。
broker.id=0
#配置监听地址和端口,listener_name://host_name:port
listeners=PLAINTEXT://elk1:9092
#topic不存在时,是否自动创建topic
auto.c...
最新评论