如何将内网服务器数据采集到日志服务

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 1.背景公司内部服务器都没有公网访问权限,只有少数网关机可以访问公网,但需要将日志采集到阿里云日志服务进行实时分析,因此需要配置网关机转发来实现内网服务器的日志采集。 2.准备材料 一台可以访问外网的网关机 1.

1.背景
公司内部服务器都没有公网访问权限,只有少数网关机可以访问公网,但需要将日志采集到阿里云日志服务进行实时分析,因此需要配置网关机转发来实现内网服务器的日志采集。

2.准备材料
一台可以访问外网的网关机 1.1.1.1
一台不能访问外网的服务器 2.2.2.2

3.目的 收集服务器2.2.2.2的日志

4.实现过程
在网关机(1.1.1.1)安装nginx,这里不做赘述 参考 https://www.cnblogs.com/lovexinyi8/p/5845017.html
在内部服务器(2.2.2.2)安装Logtail,这里参考https://help.aliyun.com/document_detail/28982.html安装,注意需要配置aliuid,参考https://help.aliyun.com/document_detail/49007.html配置
配置nginx的配置文件,需要配置两个域名,一个是阿里的区域域名,如果不知道区域的
可以看服务器的/usr/local/ilogtail/ilogtail_config.json
image

另一个域名是http://{project_name}.ap-northeast-1.log.aliyuncs.com {project_name}. 是你自己的Project名

都需要配置80 和443端口 以logtail.ap-northeast-1.log.aliyuncs.com域名的配置为例

80端口的配置

upstream logtail{
  server logtail.ap-northeast-1.log.aliyuncs.com:80;
  check interval=1000 rise=2 fall=1 timeout=1000;
}




server {
  listen 80;
  server_name logtail.ap-northeast-1.log.aliyuncs.com;
  access_log /var/log/nginx/logtail.ap-northeast-1.log.aliyuncs.com_access.log main;
  error_log /var/log/nginx/logtail.ap-northeast-1.log.aliyuncs.com_error.log debug;
  charset utf-8;


  location / {

    proxy_set_header  Host $host;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_pass http://logtail;
    break;
  }
}

443端口配置

upstream logtail_443{
  server logtail.ap-northeast-1.log.aliyuncs.com:443;
  check interval=1000 rise=2 fall=1 timeout=1000;
}




server {
  listen 443;
  server_name logtail.ap-northeast-1.log.aliyuncs.com;
  access_log /var/log/nginx/logtail.ap-northeast-1.log.aliyuncs.com_access.log main;
  error_log /var/log/nginx/logtail.ap-northeast-1.log.aliyuncs.com_error.log debug;
  charset utf-8;


  location / {

    proxy_set_header  Host $host;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_pass https://logtail_443;
    break;
  }
}

配置内部服务器(2.2.2.2)的host解析,将对应的logtail.ap-northeast-1.log.aliyuncs.com和http://{project_name}.ap-northeast-1.log.aliyuncs.com 在/etc/hosts中绑定到1.1.1.1
上述步骤都配置完成后,机器组的心跳应该已经显示OK了但是日志发送不出去,/usr/local/ilogtail/ilogtail.LOG 中提示如下信息:
image
目前的办法是让阿里的同事开通匿名写,也可以通过提交工单https://selfservice.console.aliyun.com/ticket/category/sls/today让工程师帮忙开通,如果有更好的办法欢迎讨论。

这里要感谢阿里的同事元乙提供的技术支持

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
2月前
|
监控 关系型数据库 MySQL
|
24天前
|
SQL 弹性计算 关系型数据库
PolarDB产品使用问题之如何和ECS实例实现内网互通
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
1月前
|
存储 XML Java
seata2.0服务器日志位置修改
这个过程要求您对Seata配置和Linux文件系统有基本的认识。调整配置文件时要非常细心,因为配置错误会直接影响Seata服务的运行。通过以上步骤,您可以有效地修改Seata服务器的日志位置,并确保日志文件按照您的需要被妥善地管理和存储。
36 3
|
1月前
|
监控
查看服务器/IIS日志、log、访问信息基本方法
除了手动查看,你也可以使用日志分析工具,如Log Parser、AWStats等,这些工具可以帮助你更方便地分析日志数据。
43 1
|
1月前
|
NoSQL 关系型数据库 MySQL
多机部署:打造内网服务器集群
在多机部署教程中,了解如何配置分布式应用如Laravel以使用Redis同步用户状态。关键步骤包括:修改MySQL的`bind-address`至内网IP,重启服务;同样修改Redis的`bind`,重启服务;以及调整Elasticsearch的`network.host`和`discovery.seed_hosts`,并重启。通过这些步骤,确保服务间能内网通信,实现多服务器状态同步。
48 2
|
26天前
|
存储 弹性计算 运维
可观测性体系问题之ECS管控对其所有日志的管理如何解决
可观测性体系问题之ECS管控对其所有日志的管理如何解决
26 0
|
26天前
|
存储 弹性计算 运维
可观测性体系问题之ECS管控对日志数据的处理如何解决
可观测性体系问题之ECS管控对日志数据的处理如何解决
50 0
|
2月前
|
弹性计算 网络协议 Serverless
Serverless 应用引擎操作报错合集之使用ecs,反代到函数的内网域名上,提示{"ErrorCode":"DomainNameNotFound",是什么原因
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
3月前
|
数据安全/隐私保护
通过mac电脑的下载服务器的日志与日志筛选
通过mac电脑的下载服务器的日志与日志筛选
46 0
|
弹性计算 数据安全/隐私保护

相关产品

  • 日志服务