keycloak~將日志輸出到elk
日志收集

使用docker的鏡像
lypgcs/fluentd-es-kafka:v1.3.2
|--?fluentd'?version?'1.3.2'
|--?fluent-plugin-elasticsearch'?version?'4.0.3'
|--?fluent-plugin-kafka'?version?'0.12.3
fluent.conf配置
可以添加configMap,擴展性更好,下面說一下配置的含義
名稱是fluentd-config,內(nèi)部文件名是fluent.conf
??brokers?這是kafka的地址
??consumer_group?消費組名稱
??startfrombeginning?true表示從頭消費,false從最新的消息
??format?json?表示kafka里存儲的是json格式
??topics?表示監(jiān)控的主題,多個之間用逗號分開
??tag?表示索引名稱
??flush_interval?刷新頻率
??logstashformat?index是否使用logstash命名方式(logstash-%Y.%m.%d),默認不啟用,比indexname優(yōu)先級高
??logstashprefix:logstashformat啟用的時候,index命名前綴是什么。默認為logstash
??indexname?fluentd.${tag}.%Y%m?索引名稱,當沒有l(wèi)ogstashformat時,使用這個。
??includetagkey?true?#把tag當做字段寫入ES,如果需要自定義tag時,可以添加這項
??tagkey?@logname
<source>
@type?kafka_group
brokers?192.168.0.15:9092 #kafka地址
onsumer_group?fluentd-k8s
format?json
topics?KC_AUTHORIZATION_POLICY,KC_AUTHORIZATION_POLICY_CREATE,KC_AUTHORIZATION_POLICY_DELETE,KC_AUTHORIZATION_POLICY_UPDATE,KC_AUTHORIZATION_RESOURCE_CREATE,KC_AUTHORIZATION_RESOURCE_DELETE,KC_CLIENT_LOGIN,KC_CLIENT_ROLE_MAPPING_CREATE,KC_CLIENT_ROLE_MAPPING_DELETE,KC_GROUP_CREATE,KC_GROUP_DELETE,KC_GROUP_MEMBERSHIP_CREATE,KC_LOGIN_ERROR,KC_LOGOUT,KC_REALM_ROLE_CREATE,KC_REALM_ROLE_MAPPING_CREATE,KC_REALM_ROLE_MAPPING_DELETE,KC_USER_ACTION,KC_USER_CREATE,KC_USER_DELETE,KC_USER_INFO_REQUEST,KC_USER_UPDATE,KC_CODE_TO_TOKEN_ERROR,KC_LOGIN
</source>
<match?*>
@type?elasticsearch
host?192.168.0.14 #es地址
port?4116 #es端口
logstash_format?true
flush_interval?10s
logstash_prefix?fluentd-log
</match>
k8s編排
apiVersion:?apps/v1
kind:?Deployment
metadata:
??name:?fluentd-log-deployment
??namespace:?default
spec:
??replicas:?1
??selector:
????matchLabels:
??????app:?fluentd-log
??template:
????metadata:
??????labels:
????????app:?fluentd-log
????spec:
??????hostAliases:
????????-?ip:?"192.168.0.15"
??????????hostnames:?[?"kafka15"?]
??????containers:
????????-?name:?fluentd-log-controller
??????????image:?lypgcs/fluentd-es-kafka:v1.3.2
??????????volumeMounts:
????????????-?name:?config-volume
??????????????mountPath:?/etc/fluent
??????volumes:
????????-?name:?config-volume
??????????configMap:
????????????name:?fluentd-config
??#滾動升級策略
??strategy:
????type:?RollingUpdate
????rollingUpdate:
??????maxSurge:?1
??????maxUnavailable:?0
kibana檢索結(jié)果化數(shù)據(jù)
如果你的索引結(jié)構(gòu)發(fā)生變化,需要去Management的Index?Patterns菜單中,重新刷新索引,這樣才能使用新的結(jié)構(gòu)進行檢索和聚合