-
Notifications
You must be signed in to change notification settings - Fork 188
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #494 from splunk/develop
Release/8.0.4.1 and 7.3.6
- Loading branch information
Showing
36 changed files
with
738 additions
and
154 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
## Multi-cluster Search | ||
|
||
When configuring a search head, it's possible that enable multi-cluster search. This enables the ability to search for data across a series of indexer clusters, whether they be located in different datacenters or different geographical regions. | ||
|
||
For more information, see [Splunk docs on multi-cluster search](https://docs.splunk.com/Documentation/Splunk/latest/Indexer/Configuremulti-clustersearch). | ||
|
||
The Ansible playbooks provided in this repository offer this feature through the `auxiliary_cluster_masters` option in the `default.yml` variables. To enable this, modify this section of the `default.yml` to include a list of cluster masters responsible for brokering the indexer clusters: | ||
``` | ||
splunk: | ||
... | ||
cluster_master_url: master-primary.regionA.corp.net | ||
auxiliary_cluster_masters: | ||
- url: https://master-secondary.regionA.corp.net:8089 | ||
pass4SymmKey: secretidxckey | ||
- url: https://master-tertiary.regionB.corp.net:8089 | ||
pass4SymmKey: newsecretidxckey | ||
... | ||
``` | ||
|
||
Note that in the above, the search head being created must also set `cluster_master_url`. It is only possible to peer multiple indexer clusters when the search head has a primary indexer cluster to send its own internal logs and data to. | ||
|
||
Each additional cluster master must also be given their own `pass4SymmKey` to enable authorization for this Splunk search head to connect and search over the various other clusters. | ||
|
||
To confirm that the multi-cluster search works after Ansible has been completed, visit SplunkWeb on this search head and run the following query: | ||
``` | ||
search index=_internal | ||
``` | ||
|
||
If successful, you should see: | ||
* The data from `host=master-primary.regionA.corp.net`, plus any downstream indexers that connect to this cluster | ||
* The data from `host=master-secondary.regionA.corp.net`, plus any downstream indexers that connect to this cluster | ||
* The data from `host=master-tertiary.regionB.corp.net`, plus any downstream indexers that connect to this cluster | ||
* The data from the node just provisioned, which should be forwarded to `master-primary.regionA.corp.net` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
# Execution | ||
|
||
The Ansible plays in the `splunk-ansible` project can be run in two ways: separately on each instance/host of the Splunk Enterprise deployment, or through more traditional separation of control nodes and managed nodes. In the first method each host asynchronously sets itself up using Ansible roles to form the final desired topology which is most clearly displayed through the [docker-splunk](https://github.com/splunk/docker-splunk) project. All execution methods are listed below. | ||
|
||
--- | ||
|
||
## Navigation | ||
|
||
* [Local](#local) | ||
* [Embedded](#embedded) | ||
* [Remote](#remote) | ||
|
||
--- | ||
|
||
## Local | ||
Local connection is the intended mode of using `splunk-ansible`. The dynamic inventory script `environ.py` reads environment variables and maps them into Ansible run-time variables that determine how Splunk Enterprise is setup. | ||
|
||
In order to bring up the most basic Splunk standalone instance on a local host, you can run the following: | ||
|
||
```bash | ||
export SPLUNK_PASSWORD=helloworld | ||
export SPLUNK_BUILD_URL=https://download.splunk.com/products/splunk/releases/8.0.3/linux/splunk-8.0.3-a6754d8441bf-Linux-x86_64.tgz | ||
export SPLUNK_USER=$(whoami) | ||
export SPLUNK_GROUP=$(id -gn) | ||
|
||
ansible-playbook --inventory inventory/environ.py --limit localhost site.yml | ||
``` | ||
|
||
--- | ||
|
||
## Embedded | ||
The embedded, or wrapper, mode of using `splunk-ansible` involves treating this entire project as a package. See [these instructions](wrapper-example/README.md) on how to install `splunk-ansible` on multiple target machines to bring up an indexer cluster. | ||
|
||
--- | ||
|
||
## Remote | ||
The more traditional and familiar approach to running Ansible can also be used with `splunk-ansible`. This fits the use-case where `splunk-ansible` is installed on some controller node (ex. your personal workstation, Ansible Tower, or Ansible AWX) and this controller uses the ssh connection to setup Splunk on a series of target hosts. | ||
|
||
See [these instructions](remote/README.md) on how to install `splunk-ansible` on multiple target machines to bring up an indexer cluster. |
Oops, something went wrong.