{"id":51116595,"url":"https://github.com/oracle-devrel/terraform-oci-rsa-wazuh","last_synced_at":"2026-06-24T22:30:40.778Z","repository":{"id":46492160,"uuid":"406979701","full_name":"oracle-devrel/terraform-oci-rsa-wazuh","owner":"oracle-devrel","description":"Wazuh Terraform Module on OCI","archived":false,"fork":false,"pushed_at":"2025-01-21T20:08:39.000Z","size":84,"stargazers_count":2,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-04-21T13:48:01.437Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"upl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oracle-devrel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-16T01:42:14.000Z","updated_at":"2025-12-27T03:11:32.000Z","dependencies_parsed_at":"2025-01-21T21:19:17.750Z","dependency_job_id":"cf9f540f-f42f-47b7-9975-312e3b6bd0d0","html_url":"https://github.com/oracle-devrel/terraform-oci-rsa-wazuh","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":"oracle-devrel/repo-template","purl":"pkg:github/oracle-devrel/terraform-oci-rsa-wazuh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-devrel%2Fterraform-oci-rsa-wazuh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-devrel%2Fterraform-oci-rsa-wazuh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-devrel%2Fterraform-oci-rsa-wazuh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-devrel%2Fterraform-oci-rsa-wazuh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oracle-devrel","download_url":"https://codeload.github.com/oracle-devrel/terraform-oci-rsa-wazuh/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-devrel%2Fterraform-oci-rsa-wazuh/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34752465,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-24T02:00:07.484Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-06-24T22:30:40.687Z","updated_at":"2026-06-24T22:30:40.766Z","avatar_url":"https://github.com/oracle-devrel.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TERRAFORM-OCI-RSA-WAZUH\nThis Terraform stack deploys a Wazuh cluster to an Oracle Cloud Infrastructure (OCI) tenancy. \nThe stack uses the following OCI resources:\n- Compute\n- Identity and Access Management\n- Object Storage\n- Networking\n- Load Balancer\n\nAn existing vcn with a route table, and NAT gateway are required to deploy the stack.\n\nThe stack is intended to be used in conjunction with the following ansible playbooks.\n- [oci-rsa-ansible-wazuh](https://github.com/oracle-quickstart/oci-rsa-ansible-wazuh)\n- [oci-rsa-ansible-wazuh-kibana](https://github.com/oracle-quickstart/oci-rsa-ansible-wazuh-kibana)\n- [oci-rsa-ansible-wazuh-odfe](https://github.com/oracle-quickstart/oci-rsa-ansible-wazuh-odfe)\n\nIf these playbooks are not appropriately provided the stack will only provision the instances and not deploy the Wazuh cluster.\n\n## Requirements\n- [Terraform]() \u003e= 1.0.6\n\n## Architecture\n![Alt text](https://documentation.wazuh.com/current/_images/deployment1.png)\n\n### Compute\nThe cluster is configured to use: \n- 1 manager Wazuh node\n- 2 worker Wazuh nodes\n- 3 Open Distro Elasticsearch nodes\n- 1 Kibana node\n\nThese numbers can be modified to different cluster sizes.\n\n### IAM\nThis template creates a dynamic group, and an iam policy for object storage access. These are required for Wazuh log backups.\n\n### Object Storage\nUsed to store the backup logs for Wazuh.\n\n### Load Balancer\nUsed by this stack to distribute agent traffic between the master and worker nodes. Internally accessible by the agents \nthrough domain name `wazuh-lb.wazuh-cluster.local`.\n\n### Networking\nThe Terraform stack provisions a subnet with 3 security lists for Wazuh, Kibana, Open Distro for Elasticsearch, and \nElasticsearch API. It also creates a dns zone and records for cluster nodes.\n\n## Branches\n* `main` branch contains the latest code.\nTerraform stack consists of a Wazuh, ElasticSearch and Kibana nodes. \n\n## Prerequisites\nBefore you can run terraform, the required ansible playbooks should be bundled up with the dependancies and uploaded to \nan object storage bucket.\n\nFor each of the ansible playbooks, run the following commands.\n\nAssuming you have cloned the repository and are in the repository root:\n\nCommand to install the ansible roles\n```\nansible-galaxy install -r requirements.yml -p ./roles\n```\nCommand to bundle up the playbook.\nHere the `playbook_zip` is `target_dir/playbook_name`\n```\ntar -czf $playbook_zip $playbook_name\n```\nCommand to upload the tar file to object storage\n```\noci os object put -ns $namespace -bn $bucketname --file $playbook_zip --name ${playbook_name}.tgz\n```\nAfter Terraform provisions the instance, the bootstrapping script pulls the appropriate tar file from object store and runs the playbook.\n\n## Usage\nIf the bootstrapping variables are not set, Terraform will only provision the resources and not install the wazuh cluster through ansible. \n\n### Bootstrapping Variables\nDefine the following variables in order to deploy the Ansible playbooks during bootstrapping. The default value of these variables is `UNDEFINED`.\n\n- `bootstrap_bucket`: Object storage bucket containing all the Ansible playbooks. For example `my_bootstrap_bucket`\n- `wazuh_bootstrap_bundle`:  The tgz containing the Ansible playbook for Wazuh manager and workers instances. For example `oci-rsa-ansible-wazuh.tgz`\n- `elastic_bootstrap_bundle`: The tgz containing the Ansible playbook for ElasticSearch instances. For example `oci-rsa-ansible-wazuh-odfe.tgz`\n- `kibana_bootstrap_bundle`:  The tgz containing the Ansible playbook for Kibana instance. For example `oci-rsa-ansible-wazuh-kibana.tgz`\n\n### Terraform Variables\nTerraform variables used in this stack are referenced [here](VARIABLES.md). This document is automatically generated \nusing the [terraform-docs](https://github.com/terraform-docs/terraform-docs) with the following command:\n\n```\nterraform-docs markdown table .\n```\n\n### Running Terraform\nA single `terraform apply` should bring up the entire stack, and return useful variables back to the terminal.\n\n```\nterraform apply\n```\n\n### Logging Into Wazuh\nOnce Terraform has run, and the instances have completed their bootstrap \nprocess, you should be able to log into the Kibana interface and Wazuh plugin.\n\nIdeally you are connecting through an SSH tunnel, directed to the\n**kibana_frontend_ip** on port 5601. For example - Using a web browser,\na login URL would look like this: **https://localhost:5601/app/wazuh**\n\nThe default username is admin, and the password is provided\nin **kibana_admin_password**, which can be retrieved from Terrafrom output.\n\n### How to retrieve sensitive output values\nUsing following command to retrieve any sensitive output value:\n```\nterraform output -raw \u003coutput_variable_name\u003e\n```\ne.g.\n```\nterraform output -raw kibana_admin_password\n```\n\n## Documentation\n\n* [Wazuh Ansible documentation](https://documentation.wazuh.com/current/deploying-with-ansible/index.html)\n* [Full documentation](http://documentation.wazuh.com)\n\n## The Team\nThis repository was developed by the Oracle OCI Regulatory Solutions and Automation (RSA) team. \n\n## How to Contribute\nInterested in contributing?  See our contribution [guidelines](CONTRIBUTE.md) for details.\n\n## License\nThis repository and its contents are licensed under [UPL 1.0](https://opensource.org/licenses/UPL).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle-devrel%2Fterraform-oci-rsa-wazuh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foracle-devrel%2Fterraform-oci-rsa-wazuh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle-devrel%2Fterraform-oci-rsa-wazuh/lists"}