Zabbix如何监控腾讯云NAT网关

news2024/11/27 16:42:08

1、NAT网关介绍

NAT 网关(NAT Gateway)是一种支持 IP 地址转换服务,提供网络地址转换能力,主要包括SNAT(Source Network Address Translation,源网络地址转换)和DNAT(Destination Network Address Translation,目的网络地址转换)能力,可为私有网络(VPC)内的资源提供安全、高性能的 Internet 访问服务。

NAT 网关分为公网 NAT 网关和私网 NAT 网关。公网 NAT 网关提供公网地址转换服务,而私网 NAT 网关提供私网地址转换服务。

NAT 网关支持高达99.99%的高可用性、5Gbps的带宽以及1000 万以上的并发连接数,其典型应用场景如下:

1. 大带宽、高可用的公网出口服务,例如:网络爬虫,访问 Internet 公共服务等。

2. 安全的公网出口服务,例如:云服务器需要与公网通信,但出于安全性考虑,不希望云服务器绑定公网 IP。

2、监控准备

本次监控方式通过Zabbix外部检查方式自动发现实例,监控项数据通过Zabbix采集器方式生成。将下面脚本上传至外部检查路径下。

注:部署路径有差异,根据实际环境的外部检查路径放至脚本。

#!/usr/bin/python3
import json
from tencentcloud.common import
credential
from
tencentcloud.common.profile.client_profile import ClientProfile
from
tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception
import TencentCloudSDKException
from tencentcloud.vpc.v20170312
import vpc_client, models
import sys
from os import popen
from zbxsend import ZabbixMetric,
ZabbixSender
akey = sys.argv[1]
ckey = sys.argv[2]
region = sys.argv[3]
ZABBIX_SEND_ADDR =
'/itops/zabbix/bin/zabbix_sender'
ZABBIX_SERVER_IP = '127.0.0.1'
ZABBIX_PORT = '10051'
def get_data(offset):
   
params = {
        "Limit": 100,
        "Offset": offset
   
}
   
req.from_json_string(json.dumps(params))
   
# 返回的resp是一个DescribeNatGatewaysResponse的实例,与请求对象对应
   
resp = client.DescribeNatGateways(req)
   
# 输出json格式的字符串回包
   
res = resp.to_json_string()
   
data = json.loads(res)
   
disklist = data['NatGatewaySet']
   
# 获取记录总条目数
   
totalcount = int(data['TotalCount'])
   
return totalcount,disklist
 
try:
   
# 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey 
   
# 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
   
cred = credential.Credential(akey,ckey)
   
# 实例化一个http选项,可选的,没有特殊需求可以跳过
   
httpProfile = HttpProfile()
   
httpProfile.endpoint = "vpc.tencentcloudapi.com"
 
   
# 实例化一个client选项,可选的,没有特殊需求可以跳过
   
clientProfile = ClientProfile()
   
clientProfile.httpProfile = httpProfile
   
# 实例化要请求产品的client对象,clientProfile是可选的
   
client = vpc_client.VpcClient(cred, region, clientProfile)
 
   
# 实例化一个请求对象,每个接口都会对应一个request对象
   
req = models.DescribeNatGatewaysRequest()
 
   
totalcount,disklist = get_data(0) ## 获取100条以内的disk数据
   
if totalcount > 100: ## 如果disk记录大于100,则将100往后的数据拼接至list

        if totalcount % 100 > 0:
            num = totalcount // 100 + 1
        else:
            num = totalcount // 100
        for i in range(num):
            if i == 0:
                continue
            else:
                disklist = disklist + get_data(i*100)[1]
 
    list_disk = []
    for i in disklist:
        nat_id = i['NatGatewayId']
        nat_name = i['NatGatewayName']
        nat_name = nat_name+nat_id
        list_disk.append({"{#NATID}":nat_id,"{#NATNAME}":nat_name})
        keys_list = list(i.keys())
        for key in keys_list:
            result = ZabbixSender(ZABBIX_SERVER_IP).send([ZabbixMetric(nat_id,key,str(i[key]))])
    print(json.dumps(list_disk))
 
 
except TencentCloudSDKException as err:
    print(err)

注意以下三处的值根据实际环境调整

ZABBIX_SEND_ADDR:zabbix_sender路径

ZABBIX_SERVER_IP:server服务器IP地址

ZABBIX_PORT:server服务器端口

3、创建监控模板

3.1.创建NAT网关实例自动发现规则

键值解释:

tencent.NAT.py:脚本名称,可自定义脚本名称,需要与外部检查路径下的脚本名称一致

$ACCESS_KEY}: SecretId

{$SECRET_KEY}:SecretKey

可前往官网控制台 https://console.cloud.tencent.com/cam/capi 获取SecretId和SecretKey

{$REGION}:资源地域,表示操作的资源所属的地域

3.2、监控模板上创建监控项原型

监控项名称入口:

创建主机关联监控模板即可。

博主可能不能及时回答疑问,如技术问题欢迎加入交流。

博主具有丰富的模板资源和开发能力及项目落地管理经验分享欢迎加入交流

微信号:king_songax

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1172879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chrome好用的阅读工具【推荐】

1、插件名称:Circle 下载地址: circlereader.com/ Circle 可以提取网页中的内容信息,并进行重新排版,是浏览文章、新闻等内容的神器 看各大网站VIP : 2、油猴: 下载地址: https://www.tampe…

【2024最新】PE工具箱【下载安装】零基础到大神【附下载链接】

下载链接:点这里 1.PE (Portable Executable) 工具箱通常用于处理Windows可执行文件和动态链接库(DLL)的二进制文件格式。这些工具对于进行逆向工程、软件分析和系统维护等任务非常有用。以下是PE工具箱的一些常见功能和用法: 查…

汽车标定技术(四)--问题分析:多周期测量时上位机显示异常

目录 1.问题现象 2.数据流分析 ​​​​3.代码分析 3.1 AllocDAQ 3.2 AllocOdt 3.3 AllocOdtEntry 4.根因分析及解决方法 4.1 根因分析 4.2 解决方案 1.问题现象 在手撸XCP代码时, DAQ的实现是一大头痛的事情。最初单周期实现还好一点,特别是…

为你整理了一份抖音小店的高分打造指南

抖音小店是一种在抖音平台上运营的电商店铺。通过打造一个高分店铺,可以吸引更多用户关注和购买,提升销售业绩。下面四川不若与众将介绍一些打造高分店铺的方法。 首先,店铺名称和简介要吸引眼球。店铺名称应该简洁明了,容易被记住…

Java EE进阶2

包如果下载不下来怎么办? 1,确认包是否存在 2.如果包存在就多下载几次 3.如果下载了很多次都下载不下来,看看是不是下面几步出现了问题? 1)是否配置了国内源 settings.xml 2)目录是否为全英文,存在中文的话就修改路径 3)删除本地仓库的 jar 包,重新下载(可能由于网络的原…

线扫相机DALSA--常见问题六:PoCL供电设置

第一步:Connect power to the board J7 connector(J7供电) 第二步:Use CamExpert to enable the PoCL feature in the the Basic Timing category(打开PoCL)

Appium 移动端自动化测试,触摸(TouchAction) 与多点触控(MultiAction)

一、触摸 TouchAction 在所有的 Appium 客户端库里,TouchAction 触摸对象被创建并被赋予一连串的事件。 规范里可用的事件有: * 短按(press) * 释放(release) * 移动到(moveTo) * 点击(tap) * 等待(wait) * 长按(longPress) * 取消(cancel) * 执行(per…

将Series中每个值v替换为v在Series中升序排列时的位置值s.rank()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将Series中每个值v 替换为v在Series中 升序排列时的位置值 s.rank() 选择题 下列代码执行三次排名索引a的名次值分别为? import pandas as pd s pd.Series([3,2,0,3],index list…

Java高频面试题——Java基础篇

java基本数据类型及对应的字节数?什么是自动拆装箱?int与integer的区别?项目中如何使用? 1.java基本数据类型及对应的字节数? java总共有8中基本数据类型,整型4种,浮点型2种,字符类…

【微服务】mysql + elasticsearch数据双写设计与实现

目录 一、前言 二、为什么使用mysqles双写 2.1 单用mysql的问题 2.2 为什么不直接使用es 2.2.1 非关系型表达 2.2.2 不支持事务 2.2.3 多字段将造成性能低下 三、mysqles双写方案设计要点 3.1 全新设计 VS 中途调整架构 3.2 全表映射 VS 关键字段存储 3.2.1 最大程度…

自定义类型联合体

目录 联合体联合体类型的声明联合体的特点相同成员的结构体和联合体对比联合体大小的计算联合体的应用联合的一个练习 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸🥸&#x1f…

破解密码 LLM(代码LLM如何从 RNN 发展到 Transformer)

舒巴姆阿加瓦尔 一、说明 近年来,随着 Transformer 的引入,语言模型发生了显着的演变,它彻底改变了我们执行日常任务的方式,例如编写电子邮件、创建文档、搜索网络甚至编码方式。随着研究人员在代码智能任务中应用大型语言模型&am…

4K Video Downloader Pro v4.28.0(视频下载器)

4K Video Downloader Pro是一款专业的视频下载软件,支持从YouTube、Vimeo、Facebook、Instagram、TikTok等主流视频网站下载高质量的4K、HD和普通视频。它的操作流程简单,只需复制视频链接并粘贴到软件中即可开始下载。此外,该软件还提供了多…

校园招聘系统

校园管理系统 公共模块学生端游客端企业联系人端校内管理员端超级管理员端企业端 公共模块 登录 用户可以通过验证码、账号密码进行登录。 个人中心 学生端 学生主要为查看招聘信息以及投递等。 首页 简历详情投递 双选会公司详情 公告通知 学生端主要为这些等等&#xf…

线扫相机-TEK(埃科)相机平场矫正详细步骤

采集卡模式: 现场要求 (1) 采集卡连续采集相机图像,并正常显示。 (2) 光源控制在正常工作亮度,使画面亮度不要过低也不要饱和。 (3) 调整相机使画面偏离成像位置,形成虚焦。 (4) 相机拍摄物面使用白纸,调节曝光时间使整…

【鸿蒙软件开发】ArkUI之容器组件Counter(计数器组件)、Flex(弹性布局)

文章目录 前言一、Counter1.1 子组件1.2 接口1.3 属性1.4 事件 1.5 示例代码二、Flex弹性布局到底是什么意思? 2.1 权限列表2.2 子组件2.3 接口参数 2.4 示例代码示例代码1示例代码2 总结 前言 Counter容器组件:计数器组件,提供相应的增加或…

基础课21——知识库管理

1.知识库的概念、特点与功能 智能客服中的知识库是一个以知识为基础的系统,可以明确地表达与实际问题相对应的知识,并构成相对独立的程序行为主体,有利于有效、准确地解决实际问题。它储存着机器人对所有信息的认知概念和理解,这…

【排序算法】 快速排序(快排)!图解+实现详解!

🎥 屿小夏 : 个人主页 🔥个人专栏 : 算法—排序篇 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言🌤️快速排序的概念☁️快速排序的由来☁️快速排序的思想☁️快速排序的实…

网络运维Day02

文章目录 实验环境Linux系统简介Linux发行版RHEL与CentOS国产操作系统 安装CentOS7.9步骤一:虚拟硬件步骤二:为虚拟机安装操作系统为root设置密码首次初始化虚拟机 登录操作系统系统偏好设置 快照LINUX目录结构常见目录及其作用 LINUX磁盘表示方法LINUX中…

Linux常用命令——chage命令

在线Linux命令查询工具 chage 修改帐号和密码的有效期限 补充说明 chage命令是用来修改帐号和密码的有效期限。 语法 chage [选项] 用户名选项 -m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。 -M:密码保持有效的最大天数。 -w&…