{"id":20031344,"url":"https://github.com/goldstrike77/ansible-role-linux-skywalking","last_synced_at":"2026-05-08T23:16:01.384Z","repository":{"id":130073956,"uuid":"266445056","full_name":"goldstrike77/ansible-role-linux-skywalking","owner":"goldstrike77","description":"Ansible role for install and configure Apache SkyWalking on operating system.","archived":false,"fork":false,"pushed_at":"2021-02-18T02:20:41.000Z","size":43,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-12T17:47:51.529Z","etag":null,"topics":["ansible","ansible-role","apm","skywalking"],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/goldstrike77.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":"2020-05-24T00:51:42.000Z","updated_at":"2024-04-17T04:30:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"af647380-fa6b-440d-83ac-4543c645d871","html_url":"https://github.com/goldstrike77/ansible-role-linux-skywalking","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldstrike77%2Fansible-role-linux-skywalking","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldstrike77%2Fansible-role-linux-skywalking/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldstrike77%2Fansible-role-linux-skywalking/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldstrike77%2Fansible-role-linux-skywalking/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goldstrike77","download_url":"https://codeload.github.com/goldstrike77/ansible-role-linux-skywalking/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241462127,"owners_count":19966819,"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":["ansible","ansible-role","apm","skywalking"],"created_at":"2024-11-13T09:32:33.054Z","updated_at":"2026-05-08T23:15:56.350Z","avatar_url":"https://github.com/goldstrike77.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](https://img.shields.io/badge/Ansible-skywalking-green.svg?logo=angular\u0026style=for-the-badge)\n\n\u003e__Please note that the original design goal of this role was more concerned with the initial installation and bootstrapping environment, which currently does not involve performing continuous maintenance, and therefore are only suitable for testing and development purposes,  should not be used in production environments.__\n\n\u003e__请注意，此角色的最初设计目标更关注初始安装和引导环境，目前不涉及执行连续维护，因此仅适用于测试和开发目的，不应在生产环境中使用。__\n___\n\n\u003cp\u003e\u003cimg src=\"https://raw.githubusercontent.com/goldstrike77/goldstrike77.github.io/master/img/logo/logo_skywalking.svg\" height=\"90px\" align=\"right\" /\u003e\u003c/p\u003e\n\n__Table of Contents__\n\n- [Overview](#overview)\n  * [Instructions](#instructions)\n  * [Abstract](#abstract)\n- [Requirements](#requirements)\n  * [Operating systems](#operating-systems)\n  * [Skywalking Versions](#skywalking-versions)\n- [ Role variables](#Role-variables)\n  * [Main Configuration](#Main-parameters)\n  * [Other Configuration](#Other-parameters)\n- [Dependencies](#dependencies)\n- [Example Playbook](#example-playbook)\n  * [Hosts inventory file](#Hosts-inventory-file)\n  * [Vars in role configuration](#vars-in-role-configuration)\n  * [Combination of group vars and playbook](#combination-of-group-vars-and-playbook)\n- [License](#license)\n- [Author Information](#author-information)\n- [Contributors](#Contributors)\n\n## Overview\nApache SkyWalking is an open source APM system, including monitoring, tracing, diagnosing capabilities for distributed system in Cloud Native architecture, Especially designed for microservices, cloud native and container-based (Docker, Kubernetes, Mesos) architectures.\n\n### Instructions\n\u003cp\u003e\u003cimg src=\"https://raw.githubusercontent.com/goldstrike77/goldstrike77.github.io/master/img/skywalking-illustration.jpg\" /\u003e\u003c/p\u003e\n\n### Abstract\nThe core features are following:\n- Service instance, endpoint metrics and dependency analysis.\n- Service topology map analysis.\n- Root cause analysis, Profile the code on the runtime.\n- Slow services and endpoints detected.\n- Performance optimization.\n- Distributed tracing and context propagation.\n- Database access metrics, Detect slow database access statements.\n- Alarm.\n\n## Requirements\n### Operating systems\nThis Ansible role installs skywalking on linux operating system, including establishing a filesystem structure and server configuration with some common operational features. Only cluster management of ZooKeeper and Elasticsearch backend storage is supported.\n\nThis role will work on the following operating systems:\n\n  * CentOS 7\n\n### Skywalking versions\n\nThe following list of supported the Skywalking releases:\n\n* skywalking 7.0.0, 8.0.0\n\n## Role variables\n### Main parameters #\nThere are some variables in defaults/main.yml which can (Or needs to) be overridden:\n##### General parameters\n* `skywalking_cluster`: Cluster name of servers that implements distribution performance.\n* `skywalking_path`: This directory is used to store Apache SkyWalking server state.\n* `skywalking_version`: Specify the Apache SkyWalking version.\n* `skywalking_oap_jvm_xmx`: Size of the OAP service heap in MB.\n* `skywalking_web_jvm_xmx`: Size of the Web UI heap in MB.\n\n##### Storage Data TTL setting\n* `skywalking_datattl.record`: Unit is day, affects Record data, including tracing and alarm.\n* `skywalking_datattl.otherMetrics`: Unit is day, affects minute/hour/day dimensions of metrics.\n* `skywalking_datattl.monthMetrics`: Unit is month, affects month dimension of metrics.\n\n##### Role dependencies\n* `skywalking_elastic_dept`: A boolean value, whether ElasticSearch use the same environment.\n* `skywalking_zoo_dept`: A boolean value, whether ZooKeeper use the same environment.\n\n##### Listen port\n* `skywalking_port_arg`: Defines communication port.\n\n##### Elastic parameters\n* `skywalking_elastic_auth`: A boolean value, Enable or Disable Elasticsearch authentication.\n* `skywalking_elastic_https`: A boolean value, whether Encrypting HTTP client communications.\n* `skywalking_elastic_cluster`: Specify name for your Elastic cluster name.\n* `skywalking_elastic_hosts`: List of Elasticsearch hosts Apache SkyWalking should connect to.\n* `skywalking_elastic_pass`: Elasticsearch authenticated password.\n* `skywalking_elastic_path`: Specify the ElasticSearch data directory.\n* `skywalking_elastic_port_rest`: Elasticsearch REST port.\n* `skywalking_elastic_user`: Elasticsearch authenticated user.\n* `skywalking_elastic_version`: Specify the Elasticsearch version.\n* `skywalking_elastic_heap_size`: Specify the maximum memory allocation pool for a Java virtual machine.\n\n##### ZooKeeper parameters\n* `skywalking_zoo_version`: Specify the ZooKeeper version.\n* `skywalking_zoo_cluster`: Name of ZooKeeper cluster.\n* `skywalking_zoo_path`: Specify the ZooKeeper working directory.\n* `skywalking_zoo_servers`: List of ZooKeeper servers.\n* `skywalking_zoo_jvm_xmx`: Size of the heap in MB.\n* `skywalking_zoo_port`: ZooKeeper server listens.\n* `skywalking_zoo_enable_auth`: Whether enable quorum authentication using SASL.\n* `skywalking_zoo_user_super_passwd`: Administrator priviledges user password.\n* `skywalking_zoo_user_client_arg`: Client authentication information.\n\n##### System Variables\n* `skywalking_arg.ulimit_core`: The number of core dump launched by systemd.\n* `skywalking_arg.ulimit_nofile`: The number of files launched by systemd.\n* `skywalking_arg.ulimit_nproc`: The number of processes launched by systemd.\n* `skywalking_arg.user`: SkyWalking Service running user.\n\n##### Service Mesh\n* `environments`: Define the service environment.\n* `tags`: Define the service custom label.\n* `exporter_is_install`: Whether to install prometheus exporter.\n* `consul_public_register`: Whether register a exporter service with public consul client.\n* `consul_public_exporter_token`: Public Consul client ACL token.\n* `consul_public_http_prot`: The consul Hypertext Transfer Protocol.\n* `consul_public_clients`: List of public consul clients.\n* `consul_public_http_port`: The consul HTTP API port.\n\n### Other parameters\nThere are some variables in vars/main.yml:\n\n## Dependencies\n- Ansible versions \u003e= 2.8\n- Python \u003e= 2.7.5\n- [Elasticsearch](https://github.com/goldstrike77/ansible-role-linux-elasticsearch.git)\n- [ZooKeeper](https://github.com/goldstrike77/ansible-role-linux-zookeeper.git) \n\n## Example\n\n### Hosts inventory file\nSee tests/inventory for an example.\n\n### Vars in role configuration\nIncluding an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:\n\n```yaml\n- hosts: all\n  roles:\n     - role: ansible-role-linux-skywalking\n```\n\n### Combination of group vars and playbook\nYou can also use the group_vars or the host_vars files for setting the variables needed for this role. File you should change: group_vars/all or host_vars/`group_name`\n\n```yaml\nskywalking_cluster: 'skywalking'\nskywalking_path: '/data'\nskywalking_version: '7.0.0'\nskywalking_oap_jvm_xmx: '1024'\nskywalking_web_jvm_xmx: '512'\nskywalking_datattl:\n  record: '5'\n  otherMetrics: '30'\n  monthMetrics: '6'\nskywalking_elastic_dept: true\nskywalking_zoo_dept: true\nskywalking_port_arg:\n  grpc: '11800'\n  rest: '12800'\n  ui: '13800'\n  exporter: '1234'\nskywalking_elastic_auth: true\nskywalking_elastic_https: true\nskywalking_elastic_cluster: '{{ skywalking_cluster }}'\nskywalking_elastic_hosts:\n  - 'localhost'\nskywalking_elastic_pass: 'changeme'\nskywalking_elastic_path: '{{ skywalking_path }}'\nskywalking_elastic_port_rest: '9200'\nskywalking_elastic_user: 'elastic'\nskywalking_elastic_version: '7.6.2'\nskywalking_elastic_heap_size: '2g'\nskywalking_zoo_version: '3.5.8'\nskywalking_zoo_cluster: '{{ skywalking_cluster }}'\nskywalking_zoo_path: '{{ skywalking_path }}'\nskywalking_zoo_servers:\n  - 'localhost'\nskywalking_zoo_jvm_xmx: '2048'\nskywalking_zoo_port:\n  admin: '18080'\n  client: '2181'\n  jmx: '9405'\n  leader: '2888'\n  election: '3888'\nskywalking_zoo_enable_auth: false\nskywalking_zoo_user_super_passwd: 'changeme'\nskywalking_zoo_user_client_arg:\n  - user: 'skywalking'\n    passwd: 'changeme'\nskywalking_arg:\n  ulimit_core: 'infinity'\n  ulimit_nofile: '10240'\n  ulimit_nproc: '10240'\n  user: 'skywalking'\nenvironments: 'Development'\ntags:\n  subscription: 'default'\n  owner: 'nobody'\n  department: 'Infrastructure'\n  organization: 'The Company'\n  region: 'IDC01'\nexporter_is_install: false\nconsul_public_register: false\nconsul_public_exporter_token: '00000000-0000-0000-0000-000000000000'\nconsul_public_http_prot: 'https'\nconsul_public_http_port: '8500'\nconsul_public_clients:\n  - '127.0.0.1'\n```\n\n## License\n![](https://img.shields.io/badge/MIT-purple.svg?style=for-the-badge)\n\n## Author Information\nPlease send your suggestions to make this role better.\n\n## Contributors\nSpecial thanks to the [Connext Information Technology](http://www.connext.com.cn) for their contributions to this role.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoldstrike77%2Fansible-role-linux-skywalking","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoldstrike77%2Fansible-role-linux-skywalking","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoldstrike77%2Fansible-role-linux-skywalking/lists"}