Deploy Elastic Workplace Search with Vagrant: Step‑by‑Step Guide
This guide walks you through installing Elastic Workplace Search and Elastic Enterprise Search on a CentOS 8 VM using Vagrant, configuring data sources such as GitHub and Atlassian products, setting up user groups and weights, and verifying search results, all within a day.
Overview
Elastic Workplace Search provides a unified search layer for corporate documents across many data sources (OneDrive, SharePoint, ServiceNow, Box, Dropbox, GitHub, Google Drive, JIRA, Confluence, Salesforce, Zendesk, etc.) and leverages Elasticsearch for natural‑language and keyword search.
Test Environment
CentOS 8
JDK 11
Elasticsearch 7.6.1
Kibana 7.6.1
Elastic Workplace Search 7.6.1
Provisioning with Vagrant
All installation packages and configuration files are placed under /vagrant. The source repository is:
https://github.com/martinliu/elastic-labs
Start the VM: vagrant up Provisioning script (executed via vagrant provision)
echo I am provisioning a Elasticsearch Server...
date > /etc/vagrant_provisioned_at
sudo swapoff -a
sudo sysctl -w vm.max_map_count=262144
sysctl -p
sudo sh -c "echo 'elasticsearch - nofile 65535' >> /etc/security/limits.conf"
sudo rpm -ivh /vagrant/rpm/elasticsearch-7.6.1-x86_64.rpm
sudo /usr/share/elasticsearch/bin/elasticsearch-certutil cert -out /etc/elasticsearch/elastic-certificates.p12 -pass ""
sudo chmod 660 /etc/elasticsearch/elastic-certificates.p12
sudo cp /vagrant/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml
sudo systemctl daemon-reload
sudo systemctl start elasticsearch.service
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords auto -bAfter the VM starts, copy the generated passwords for built‑in users (elastic, kibana, logstash_system, etc.).
Install Elastic Enterprise Search (Workplace Search)
Enterprise Search requires JDK 8 or 11. Install Oracle JDK 11:
sudo rpm -ivh /vagrant/rpm/jdk-11.0.6_linux-x64_bin.rpmCopy and extract the Enterprise Search package:
sudo cp /vagrant/rpm/enterprise-search-7.6.0.tar.gz.tar /opt
cd /opt
sudo tar zxvf enterprise-search-7.6.0.tar.gz.tarConfiguration file enterprise-search.yml (example):
elasticsearch.username: elastic
elasticsearch.password: eZhp0h2ZTPKchlxxwwex
elasticsearch.host: http://192.168.50.10:9200
allow_es_settings_modification: true
ent_search.auth.source: elasticsearch-native
ent_search.external_url: http://192.168.50.10:3002
ent_search.listen_host: 0.0.0.0
ent_search.listen_port: 3002Deploy the file and start the service:
sudo cp /vagrant/enterprise-search/enterprise-search.yml /opt/enterprise-search-7.6.0/config/enterprise-search.yml
sudo ENT_SEARCH_DEFAULT_PASSWORD=martin1demo /opt/enterprise-search-7.6.0/bin/enterprise-searchThe startup log prints the default credentials (username: enterprise_search, password as set) and an encryption key for secret management.
Data Source Configuration
Supported sources include Confluence Cloud/Server, Dropbox, GitHub, Google Drive, JIRA Cloud/Server, OneDrive, Salesforce, ServiceNow, SharePoint Online, Zendesk, and custom APIs. Sources can be organization‑wide or private per user.
GitHub Integration
Create an OAuth App in GitHub, record the client ID and client secret, then add a GitHub source in Workplace Search using those credentials. Select the organizations to index; all repository issues and pull requests become searchable.
Atlassian (Confluence & JIRA) Integration
Configure connectors for Confluence and JIRA (cloud or on‑premise) following Elastic documentation. JIRA item types indexed include Task, Sub‑task, Story, Project, and Other. Incremental indexing runs every two hours by default.
User Group and Relevance Weighting
Define user groups (e.g., “Sales & Marketing” and “Product Development & Operations”). Assign source relevance weights per group. Example: increase JIRA weight to 5 for the sales group and boost GitHub weight for the development group. Enable the option allowing users to add personal data sources.
Search Verification
Search examples illustrate weighting effects. A sales user searching for elasticsearch sees JIRA results ranked higher than GitHub. A developer searching for pull requests from last week receives the most recent GitHub PRs first.
Test Summary
The guide demonstrates that Elastic Workplace Search can be deployed, configured, and exercised within a day, providing a unified search layer for internal and SaaS data sources. Custom API development can extend the platform to proprietary repositories.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
