当前位置: 首页 > news >正文

铜川网站建设电话江门网络干部学院

铜川网站建设电话,江门网络干部学院,建设手机移动网站,当前网站开发什么语言在本教程中#xff0c;我们将部署一个 metricbeat 来监控正在运行的容器的健康状况和系统指标。 为什么需要监控#xff0c;为什么需要 Metricbeat#xff1f; 一个常见的问题#xff0c;但很少有人回答。 首先#xff0c;无论我们部署的是 docker 容器还是老式的金属箱我们将部署一个 metricbeat 来监控正在运行的容器的健康状况和系统指标。 为什么需要监控为什么需要 Metricbeat 一个常见的问题但很少有人回答。 首先无论我们部署的是 docker 容器还是老式的金属箱即物理服务器监控它们的健康状况至关重要。 最大的问题是当我们在现场运行多台服务器时识别哪台服务器出现问题的效率如何 或者确定特定服务器何时崩溃有多容易 答案可以在监控数据中找到如果我们一开始就收集过。 基于经验和团队文化管理员通常编写自己的脚本或程序来收集服务器指标。 事实上这是一种相当直接的方法通常效果很好……直到部署了许多服务器实例。 脚本和程序是否可扩展以处理多服务器监控 有多少定制以及监控不同系统例如操作系统、数据库、应用程序服务器等的难易程度。 如果以上问题的答案不是很确定我们可能需要更好的解决方案。 来自 Elastic该公司的 Metricbeat 提供了一个单一的可执行文件它有助于获取最常见的服务器/服务指标包括主机即操作系统级别、数据库mySQL、postgreSQL、消息队列kafka、rabbitMQ等等。 与其它解决方案不同Metricbeat 得到维护并积极开发以支持度量消费 现在我们需要做的就是维护配置文件而不是我们脚本/程序中的逻辑。 使用 docker 创建 Elastic Stack 我们首先来仿照之前的文章 “Elasticsearch如何在 Docker 上运行 Elasticsearch 8.x 进行本地开发”  来创建我们的 docker-compose.yml 文件 docker-compose.yml version: 3.9 services:elasticsearch:image: elasticsearch:8.6.2container_name: elasticsearchenvironment:- discovery.typesingle-node- ES_JAVA_OPTS-Xms1g -Xmx1g- xpack.security.enabledfalsevolumes:- type: volumesource: es_datatarget: /usr/share/elasticsearch/dataports:- target: 9200published: 9200networks:- elastickibana:image: kibana:8.6.2container_name: kibanaports:- target: 5601published: 5601depends_on:- elasticsearchnetworks:- elasticmetricbeat:image: docker.elastic.co/beats/metricbeat:8.6.2container_name: metricbeatenvironment:ELASTICSEARCH_HOSTS: http://elasticsearch:9200volumes:- metricbeat-data01:/usr/share/metricbeat/datanetworks:- elasticdepends_on:- elasticsearchvolumes:es_data:driver: localmetricbeat-data01:driver: localnetworks:elastic:name: elasticdriver: bridge 我们添加了一个名为 metricbeat 的服务并通过环境变量 (ELASTICSEARCH_HOSTS) 声明了目标 elasticsearch 主机。 还为此服务 (metricbeat-data01) 添加了一个新卷用于数据存储。 该服务的网络应设置为 elastic原因是该服务应与我们的目标 elasticsearch 主机/节点位于同一网络上。 让我们通过发出以下命令来启动服务 docker-compose up 等所有的容器都启动后我们可以使用如下的命令来进行查看 docker ps $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 52072cc96dfc docker.elastic.co/beats/metricbeat:8.6.2 /usr/bin/tini -- /u… About a minute ago Up About a minute metricbeat 2511ea046940 kibana:8.6.2 /bin/tini -- /usr/l… 2 minutes ago Up About a minute 0.0.0.0:5601-5601/tcp kibana 4465801cb251 elasticsearch:8.6.2 /bin/tini -- /usr/l… 2 minutes ago Up About a minute 0.0.0.0:9200-9200/tcp, 9300/tcp elasticsearch 从上面我们可以看出来正在运行的容器 elasticsearchkibana 及 metricbeat。 我们可以到 Kibana 中进行查看 从上面我们可以看出来被收集进来的指标信息。 从上面显示的信息中我们可以看出来它收集的正是运行 Metricbeat 容器的指标。在默认的情况下system 模块是被启动的。它会自动帮我们收集系统指标。有关 Metricbeat 的使用请阅读之前的文章 “BeatsBeats 入门教程 二”。  恭喜我们已经成功地在我们的集群上添加了 metricbeat 监控 收集的数据可以显示在反映操作系统/主机指标的指标应用程序上包括 CPU、内存、负载、网络、进程等。 显示操作系统/主机指标非常有用但有时我们可能也想知道服务器/服务的行为方式。 举个例子我们可以监控我们的 elasticsearch 节点的健康状况吗 如果您现在点击 “Stack Monitoring” 应用程序将显示此页面 简单的意思是……没有可用的 Elasticsearch 监控数据 :( 了解 metricbeat 模块 对于现代版本的弹性堆栈弹性搜索节点的监控建议启用名为“elasticsearch-xpack”的 metricbeat 模块。 那么什么是 metricbeat 模块 一个简单的句子——模块包含与目标服务器/服务对话的逻辑并维护一组用于收集的指标的逻辑分组 因此它就像一个配置管理器。 模块在 yml 文件中声明并存储在 {metricbeat_root}/modules.d 文件夹下。 elasticsearch-xpack.yml 示例如下 elasticsearch-xpack.yml # Module: elasticsearch # Docs: https://www.elastic.co/guide/en/beats/metricbeat/main/metricbeat-module-elasticsearch.html- module: elasticsearchxpack.enabled: trueperiod: 10shosts: [http://localhost:9200]#username: user#password: secret 对于大多数情况我们会修改要收集的指标集即指标集设置、监控主机例如 localhost:9200 或 node01:9200并激活 xpack 监控功能即 xpack.enabled。 现在摆在我们面前的挑战是……如何更新 elasticsearch-xpack.yml 文件 好吧……一种方法是我们启动服务然后通过 telnet / ssh 进入 metricbeat 容器并更新配置文件。例如我们可以这样来进入到容器中 $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 52072cc96dfc docker.elastic.co/beats/metricbeat:8.6.2 /usr/bin/tini -- /u… About an hour ago Up About an hour metricbeat 2511ea046940 kibana:8.6.2 /bin/tini -- /usr/l… About an hour ago Up About an hour 0.0.0.0:5601-5601/tcp kibana 4465801cb251 elasticsearch:8.6.2 /bin/tini -- /usr/l… About an hour ago Up About an hour 0.0.0.0:9200-9200/tcp, 9300/tcp elasticsearch $ docker exec -it metricbeat /bin/bash metricbeat52072cc96dfc:~$ 这种方式可能是最简单的但它根本不可扩展并且引入了最终难以维护的手动操作。 一个不太脏的解决方案肯定是值得的。 构建自定义的 metricbeat docker 镜像 就像我们之前讨论的那样我们试图只维护配置文件而不是脚本/程序逻辑也是手动操作。 因此针对上述挑战的更简洁的解决方案是使用更新的 metricbeat.yml 构建自定义 docker 镜像。 创建 metricbeat.yml 如下 metricbeat.yml metricbeat.config.modules:path: ${path.config}/modules.d/*.ymlreload.enabled: falseprocessors:- add_cloud_metadata: ~- add_docker_metadata: ~output.elasticsearch:hosts: ${ELASTICSEARCH_HOSTS:elasticsearch:9200}username: ${ELASTICSEARCH_USERNAME:}password: ${ELASTICSEARCH_PASSWORD:}# enabled modules for monitoring (e.g. elasticsearch-xpack) metricbeat.modules: - module: elasticsearchxpack.enabled: trueperiod: 10shosts: [http://node01:9200] $ pwd /Users/liuxg/data/metricbeat $ ls docker-compose.yml metricbeat.yml 我们声明要启用 elasticsearch 模块目标主机是 elasticsearch:9200。 由于 hosts 配置是一个数组因此可以仅设置 1 个 metricbeat 实例并使用多节点的指标。 接下来让我们更新 docker-compose.yml 如下 docker-compose.yml version: 3.9 services:elasticsearch:image: elasticsearch:8.6.2container_name: elasticsearchenvironment:- discovery.typesingle-node- ES_JAVA_OPTS-Xms1g -Xmx1g- xpack.security.enabledfalsevolumes:- type: volumesource: es_datatarget: /usr/share/elasticsearch/dataports:- target: 9200published: 9200networks:- elastickibana:image: kibana:8.6.2container_name: kibanaports:- target: 5601published: 5601depends_on:- elasticsearchnetworks:- elasticmetricbeat:build: .# image: docker.elastic.co/beats/metricbeat:8.6.2container_name: metricbeatenvironment:ELASTICSEARCH_HOSTS: http://elasticsearch:9200volumes:- metricbeat-data01:/usr/share/metricbeat/datanetworks:- elasticdepends_on:- elasticsearchvolumes:es_data:driver: localmetricbeat-data01:driver: localnetworks:elastic:name: elasticdriver: bridge 配置文件的唯一变化是用 build 配置替换 image 配置。 build 只是意味着我们正在从本地 Dockerfile 配置构建自定义镜像。 Dockerfile 包含构建自定义镜像的步骤和我们的版本如下 FROM docker.elastic.co/beats/metricbeat:8.6.2 COPY metricbeat.yml /usr/share/metricbeat/metricbeat.yml USER root RUN chown root /usr/share/metricbeat/metricbeat.yml $ pwd /Users/liuxg/data/metricbeat $ ls Dockerfile docker-compose.yml metricbeat.yml 这很简单我们将基础 docker 镜像设置为 docker.elastic.co/beats/metricbeat:8.6.2。 然后我们将自定义的 metricbeat.yml 复制到镜像的 /usr/share/metricbeat 路径下。 最后使用 root 用户更改 metricbeat.yml 的访问权限并完成。 接下来是构建镜像但是发出如下的命令 如果一切顺利我们的镜像很快就会建立起来了。 是时候启动服务并验证结果了 docker-compose up 接下来我们到 Kibana 中去查看 很显然这次我们看到了不一样的结果。 我们可以看到想要的指标信息。 Horray ~ 我们做到了metricbeat 正在收集 elasticsearch 节点的指标。
http://www.dnsts.com.cn/news/62067.html

相关文章:

  • 怎么增加网站首页权重哪几个做内贸的网站比较好一点
  • 平顶山做网站多少钱西安网站维护
  • 公司做网站需要提供什么条件生成网站有吗免费的
  • html5企业网站 源码岳阳市交通建设投资公司门户网站
  • 上海外贸建站推广公司wordpress+快讯
  • 简述跨境电商网站的平台建设融资是什么意思
  • 彩票网站建设制作价格网站标题如何写
  • 天津企业网站建设公司让移动网站
  • 苏州网站建设哪个比较牛vs做网站教程
  • 科技公司网站建设寻找装修公司
  • 网站栏目划分的原则一物一码二维码生成系统
  • 如何做高端网站个人做网站开发
  • 外国人做的购物网站专业的医疗网站建设
  • wordpress仿站博客视频教程如何建做校园购物网站
  • 超链接网站怎么做网页设计策划案案模板
  • 淘宝的网站怎么做的好做兼职的网站贴吧
  • 网站建设常用的6大布局加代码wordpress自建菜单
  • 包装东莞网站建设0769西安制作网站公司哪家好
  • 深圳整站简阳建设网站公司
  • 太原市微网站建设管理外贸网站模板下载
  • 券多多是谁做的网站抖音搜索关键词排名查询
  • 内网站做映射家庭安全卫士论坛WordPress
  • wordpress 文章折叠佛山市seo点击排名软件
  • 本地主机 搭建网站上海市建设工程信息报送网站
  • 旅游网站建设的好处磁县网站制作公司
  • 一流的菏泽网站建设网页与网站之间的关系
  • 怎么不花钱建立网站杭州品牌vi设计公司
  • 网站建设意见征求小程序制作用华网天下北京
  • 网站功能建设做网站编写代码
  • 做网站入门看什么书wordpress 菜单 宽度