{"id":18566557,"url":"https://github.com/youyo/zaia","last_synced_at":"2025-05-15T19:35:25.754Z","repository":{"id":85802522,"uuid":"129212557","full_name":"youyo/zaia","owner":"youyo","description":null,"archived":false,"fork":false,"pushed_at":"2021-02-19T06:29:42.000Z","size":50,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-05-01T14:24:07.314Z","etag":null,"topics":["ec2-instance","golang","zabbix","zabbix-aws"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/youyo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-12T07:41:39.000Z","updated_at":"2024-06-19T07:10:51.437Z","dependencies_parsed_at":null,"dependency_job_id":"8266bd40-192f-4c4e-9227-d336888f57d8","html_url":"https://github.com/youyo/zaia","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/youyo%2Fzaia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/youyo%2Fzaia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/youyo%2Fzaia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/youyo%2Fzaia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/youyo","download_url":"https://codeload.github.com/youyo/zaia/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254407756,"owners_count":22066311,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ec2-instance","golang","zabbix","zabbix-aws"],"created_at":"2024-11-06T22:23:32.566Z","updated_at":"2025-05-15T19:35:25.706Z","avatar_url":"https://github.com/youyo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# zabbix-aws-integration-agent\n\nUsed by Zabbix LLD.  \nIt performs authentication by Assume role.  \n  \nThe role of zabbix-aws-integration-agent.\n\n```\n{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Action\": [\n                \"sts:AssumeRole\"\n            ],\n            \"Resource\": \"*\",\n            \"Effect\": \"Allow\"\n        }\n    ]\n}\n```\n\nThe side to be integrated has a ReadOnlyAccess by aws maneged policy.  \nTrust Relationship policy.\n\n```\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Effect\": \"Allow\",\n      \"Principal\": {\n        \"AWS\": \"arn:aws:iam::00000000:root\"\n      },\n      \"Action\": \"sts:AssumeRole\",\n      \"Condition\": {}\n    }\n  ]\n}\n```\n\n## Usage\n\n### Start process\n\nzabbix-aws-integration-agent is running in docker container.  \nhttps://hub.docker.com/r/youyo/zabbix-aws-integration-agent/\n\n```\n$ docker container run -d -p 10050:10050 -e AWS_ACCESS_KEY_ID=your_aws_access_key -e AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key --restart always --name zabbix-aws-integration-agent youyo/zabbix-aws-integration-agent:latest\n```\n\n### Request method\n\nRequest method is zabbix protocol.\n\n- Discovery of running EC2 instances.\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.ec2.discovery[Zabbix-host-group,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.ec2.discovery[zabbix-host-group,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\n{\n  \"data\": [\n    {\n      \"{#INSTANCE_ID}\": \"i-0000xxxx\",\n      \"{#INSTANCE_NAME}\": \"Name tag of the instance\",\n      \"{#INSTANCE_ROLE}\": \"Role tag of the instance\",\n      \"{#ZABBIX_HOST_GROUP}\": \"zabbix-host-group\"\n    }\n  ]\n}\n```\n\n- Whether the ec2 instance has maintenance\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.ec2.maintenance[Instance-id,No maintenance message,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.ec2.maintenance[i-0000xxxx,No maintenance,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\nNo maintenance\n```\n\n- Discovery of RDS instances.\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.rds.instance.discovery[Zabbix-host-group,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.rds.instance.discovery[zabbix-host-group,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\n{\n  \"data\": [\n    {\n      \"{#DB_INSTANCE_IDENTIFIER}\": \"identifier\",\n      \"{#ENGINE}\": \"aurora-mysql\",\n      \"{#ZABBIX_HOST_GROUP}\": \"zabbix-host-group\"\n    }\n  ]\n}\n```\n\n- Whether the rds instance has maintenance\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.rds.instance.maintenance[db-instance-identifier,No maintenance message,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.rds.instance.maintenance[db-instance-identifier,No maintenance,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\nNo maintenance\n```\n\n- Discovery of RDS clusters\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.rds.cluster.discovery[Zabbix-host-group,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.rds.cluster.discovery[zabbix-host-group,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\n{\n  \"data\": [\n    {\n      \"{#DB_CLUSTER_IDENTIFIER}\": \"identifier\",\n      \"{#ENGINE}\": \"aurora-mysql\",\n      \"{#ZABBIX_HOST_GROUP}\": \"zabbix-host-group\"\n    }\n  ]\n}\n```\n\n- Whether the rds cluster has maintenance\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.rds.cluster.maintenance[db-cluster-identifier,No maintenance message,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.rds.cluster.maintenance[db-cluster-identifier,No maintenance,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\nNo maintenance\n```\n\n- Fetch CloudWatch data\n\nSyntax\n\n```\n$ zabbix_get -s zabbix-aws-integration-agent-host -k aws-integration.cloudwatch.get-metrics[Namespace,Dimension-name,Dimension-value,Metrics,Statistic,ARN,Region]\n```\n\nExample\n\n```\n$ zabbix_get -s 127.0.0.1 -k aws-integration.cloudwatch.get-metrics[AWS/EC2,InstanceId,i-0000xxxx,CPUUtilization,Average,arn:aws:iam::00000000:role/rolename,ap-northeast-1]\n7.696\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyouyo%2Fzaia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyouyo%2Fzaia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyouyo%2Fzaia/lists"}