前言
在本教程中,您将学习如何创建云搜索服务,并收集syslog日志。
关于实验
预计部署时间:40分钟
级别:初级
相关产品:云搜索服务云服务器
受众: 通用
环境说明
实验步骤
步骤1:创建云搜索服务
-
进入到云搜索服务控制台
-
点击创建实例,如下图
-
从上到下填写实例名称、版本、节点规格、数据盘、节点数量、专用主节点(生产中建议启用),私有网络,配置访问Elasticsearch和登录Kibana的用户名(默认admin)和密码,传输协议如下:
-
实例信息配置完成后,点击下一步确认订单
-
核对完配置之后,便可以提交订单
6.自动跳转到实例列表界面,并确认最终的运行状态为运行中
步骤2:连接到您的ECS服务器,并安装Logstash(7.10.2)
创建以**.repo**结尾的yum源文件,并移动到/etc/yum.repos.d/文件夹中,文件内容如下:
[root@i-3tmpsu0gq94d2esykd20 yum.repos.d]# cat logstash.repo
[logstash-7.x]
name=Elastic repository for 7.x packages
baseurl=[https://artifacts.elastic.co/packages/7.x/yum](https://artifacts.elastic.co/packages/7.x/yum)
gpgcheck=0
gpgkey=[https://artifacts.elastic.co/GPG-KEY-elasticsearch](https://artifacts.elastic.co/GPG-KEY-elasticsearch)
enabled=1
autorefresh=1
type=rpm-md
[root@i-3tmpsu0gq94d2esykd20 yum.repos.d]# yum -y install logstash-7.10.2
步骤3:配置收集 Syslog的配置文件并启动logstash
1.获取output的云搜索服务的信息 2.下载证书文件并上传的ECS的/etc/logstash/目录下,并命名为es_ca.cer
[root@i-3tmpsu0gq94d2esykd20 logstash]# ll es*
-rw-r--r-- 1 root root 4550 Dec 11 11:32 es_ca.cer
3.配置文件示例,名字为logstash-syslog-ssl.conf ,替换下面的$password的变量改为自己的密码
input {
tcp {
port => 5000
type => syslog
}
udp {
port => 5000
type => syslog
}
}
filter {
if [type] == "syslog" {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
add_field => [ "received_at", "%{@timestamp}" ]
add_field => [ "received_from", "%{host}" ]
}
date {
match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
}
}
output {
elasticsearch {
hosts => ["[https://100.65.178.108:9200](https://100.65.178.108:9200)"]
index => "syslog_index"
user => "admin"
password => "$password"
cacert => "/etc/logstash/es_ca.cer"
ssl_certificate_verification => false
}
}
[root@i-3tmpsu0gq94d2esykd20 logstash]# /usr/share/logstash/bin/logstash -f conf.d/logstash-syslog-ssl.conf
4.启动logstash服务
[root@i-3tmpsu0gq94d2esykd20 logstash]# cat /etc/rsyslog.conf | grep 5000
*.* @@[localhost:5000](http://localhost:5000)
[root@i-3tmpsu0gq94d2esykd20 logstash]# systemctl restart rsyslog
步骤4: 配置rsyslog的配置文件,并重启rsyslog服务
在/etc/rsyslog.conf中添加如下配置
[root@i-3tmpsu0gq94d2esykd20 logstash]# cat /etc/rsyslog.conf | grep 5000
*.* @@[localhost:5000](http://localhost:5000)
[root@i-3tmpsu0gq94d2esykd20 logstash]# systemctl restart rsyslog
步骤5:登录kibana查看是否有数据收集
1.开启Kibana公网访问 2.浏览器输入地址访问,输入用户名和密码 3.左侧栏找到Index Management管理 4.查看确认呢syslog_index已经存在 5.查看收集的索引具体信息 6.如果没有图形化工具,也可以用命令行在es中查询,替换下面命令的password变量
[root@i-3tmpsu0gq94d2esykd20 logstash]# curl --user admin:"$password" -k [https://100.65.178.108:9200/_cat/indices?v](https://100.65.178.108:9200/_cat/indices?v)
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
green open syslog_index hcFw0-UTRtaiYLekDfyk_g 1 1 98 0 151.6kb 125.5kb
green open .kibana_1 _fpPY3vVQgK9yd6D041fOw 1 1 24 12 141kb 79.2kb
green open .opendistro_security zzfrLSJLQs2Jv1Km2sCNGg 1 2 9 0 105.3kb 51.9kb