<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Search Nuggets &#187; elk</title>
	<atom:link href="http://blog.comperiosearch.com/blog/tag/elk/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.comperiosearch.com</link>
	<description>A blog about Search as THE solution</description>
	<lastBuildDate>Mon, 13 Jun 2016 08:59:45 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=3.9.40</generator>
	<item>
		<title>ELK stack deployment with Ansible</title>
		<link>http://blog.comperiosearch.com/blog/2015/11/26/elk-stack-deployment-with-ansible/</link>
		<comments>http://blog.comperiosearch.com/blog/2015/11/26/elk-stack-deployment-with-ansible/#comments</comments>
		<pubDate>Thu, 26 Nov 2015 09:59:38 +0000</pubDate>
		<dc:creator><![CDATA[Christoffer Vig]]></dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[ansible]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[Elasticsearch]]></category>
		<category><![CDATA[elk]]></category>
		<category><![CDATA[Kibana]]></category>
		<category><![CDATA[logstash]]></category>

		<guid isPermaLink="false">http://blog.comperiosearch.com/?p=3999</guid>
		<description><![CDATA[As human beings, we like to believe that each and every one of us is a special individual, and not easily replaceable. That may be fine, but please, don’t fall into the habit of treating your computer the same way. Ansible is a free software platform for configuring and managing computers, and I’ve been using [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright" src="http://www.ansible.com/hs-fs/hub/330046/file-767051897-png/Official_Logos/ansible_circleA_red.png?t=1448391213471" alt="" width="251" height="251" />As human beings, we like to believe that each and every one of us is a special individual, and not easily replaceable. That may be fine, but please, don’t fall into the habit of treating your computer the same way.</p>
<p><span id="more-3999"></span></p>
<p><a href="https://en.wikipedia.org/wiki/Ansible_(software)"><b>Ansible</b> </a>is a <a href="https://en.wikipedia.org/wiki/Free_software">free software</a> platform for configuring and managing computers, and I’ve been using it a lot lately to manage the ELK stack. Elasticsearch, Logstash and Kibana.</p>
<p>I can define a list of servers I want to manage in a YAML config file &#8211; the so called inventory:</p><pre class="crayon-plain-tag">[elasticearch-master]
es-master1.mydomain.com
es-master2.mydomain.com
es-master3.mydomain.com

[elasticsearch-data]
elk-data1.mydomain.com
elk-data2.mydomain.com
elk-data3.mydomain.com

[kibana]
kibana.mydomain.com</pre><p>And define the roles for the servers in another YAML config file &#8211; the so called playbook:</p><pre class="crayon-plain-tag">- hosts: elasticsearch-master
  roles:
    - ansible-elasticsearch

- hosts: elasticsearch-data
  roles:
    - ansible-elasticsearch

- hosts: logstash
  roles:
    - ansible-logstash

- hosts: kibana
  roles:
    - ansible-kibana</pre><p>&nbsp;</p>
<p>Each group of servers may have their own files containing configuration variables.</p><pre class="crayon-plain-tag">elasticsearch_version: 2.1.0
elasticsearch_node_master: false
elasticsearch_heap_size: 1000G</pre><p>&nbsp;</p>
<p>Ansible is used for configuring the ELK stack vagrant box at <a href="https://github.com/comperiosearch/vagrant-elk-box-ansible">https://github.com/comperiosearch/vagrant-elk-box-ansible</a>, which was recently upgraded with Elasticsearch 2.1, Kibana 4.3 and Logstash 2.1</p>
<p>The same set of Ansible roles can be applied when the configuration needs to move into production, by applying another set of variable files with modified host names, certificates and such. The possible ways to do this are several.</p>
<p><b>How does it work?</b></p>
<p>Ansible is agent-less. This means, you do not install anything (an agent) on the machines you control. Ansible needs only to be installed on the controlling machine (Linux/OSX) and  connects to the managed machines (some support for windows, even) using SSH. The only requirement on the managed machines is python.</p>
<p>Happy ansibling!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.comperiosearch.com/blog/2015/11/26/elk-stack-deployment-with-ansible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ELK in one (Vagrant) box</title>
		<link>http://blog.comperiosearch.com/blog/2014/08/14/elk-one-vagrant-box/</link>
		<comments>http://blog.comperiosearch.com/blog/2014/08/14/elk-one-vagrant-box/#comments</comments>
		<pubDate>Thu, 14 Aug 2014 14:06:18 +0000</pubDate>
		<dc:creator><![CDATA[Murhaf Fares]]></dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Elasticsearch]]></category>
		<category><![CDATA[elk]]></category>
		<category><![CDATA[Kibana]]></category>
		<category><![CDATA[logstash]]></category>
		<category><![CDATA[puppet]]></category>
		<category><![CDATA[vagrant]]></category>

		<guid isPermaLink="false">http://blog.comperiosearch.com/?p=2813</guid>
		<description><![CDATA[In this blog post we introduce a Vagrant box to easily create configurable and reproducible development environments for ELK (Elasticsearch, Logastash and Kibana). At Comperio, we mainly use this box for query log analysis using the ELK stack. In case you don’t know, Vagrant is a free and open-source software that combines VirtualBox (a virtualization [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-2828" src="http://blog.comperiosearch.com/wp-content/uploads/2014/08/elk_vagrant_chilling1-300x300.png" alt="elk_vagrant_chilling" width="300" height="300" /></p>
<p>In this blog post we introduce a Vagrant box to easily create configurable and reproducible development environments for ELK (Elasticsearch, Logastash and Kibana). At Comperio, we mainly use this box for query log analysis using the ELK stack.<br />
In case you don’t know, <a href="http://www.vagrantup.com/">Vagrant</a> is a free and open-source software that combines VirtualBox (a virtualization software) with configuration management softwares such as Puppet and Chef.</p>
<p><strong>ELK stack up and running in two commands</strong></p>
<blockquote><p>$ git clone https://github.com/comperiosearch/vagrant-elk-box.git<br />
$ vagrant up</p></blockquote>
<p>By cloning this <a href="https://github.com/comperiosearch/vagrant-elk-box">github repo</a> and then typing “vagrant up”, you will be installing elasticsearch, logstash, kibana and nginx (the latter used to serve kibana).</p>
<p>Elasticsearch will be running on port 9200, as usual, which is forwarded to the host machine. As for Kibana, it will be served on port 5601 (also accessible from the host OS).</p>
<p><strong>How does it work?</strong><br />
As mentioned above, Vagrant is a wrapper around VirtualBox and some configuration management software. In our box, we use pure shell scripting and Puppet to configure the ELK stack.<br />
There are two essential configuration files in this box: <a href="https://github.com/comperiosearch/vagrant-elk-box/blob/master/Vagrantfile">Vagrantfile</a> and the Puppet manifest <a href="https://github.com/comperiosearch/vagrant-elk-box/blob/master/manifests/default.pp">default.pp</a>.<br />
Vagrantfile includes the settings of the virtual box such as operating system, memory size, number of CPUs, forwarded ports, etc…<br />
<script src="https://gist.github.com/0ba6fa7ecece4fdac1ff.js?file=Vagrantfile"></script></p>
<p>Vagrantfile also includes a shell script that installs, among other things, the official Puppet modules for <a href="https://github.com/elasticsearch/puppet-elasticsearch">elasticsearch</a> and <a href="https://github.com/elasticsearch/puppet-logstash">logstash</a>. By using that shell script we stay away from git submodules which were used in <a href="https://github.com/comperiosearch/vagrant-elasticsearch-box">another Vagrant image</a> we made earlier for elasticsearch.<br />
<script src="https://gist.github.com/fb50e0cfcdee2e14898a.js?file=Vagrantfile"></script></p>
<p>In the Puppet manifest, default.pp, we define what version of elasticsearch to install and make sure that it is running as a service.<br />
<script src="https://gist.github.com/3abbe1b3aee8ecbe1b9e.js?file=default.pp"></script></p>
<p>We do the same for logstash and additionally link the default logstash configuration file to <a href="https://github.com/comperiosearch/vagrant-elk-box/blob/master/confs/logstash/logstash.conf">this file</a> under /Vagrant/confs/logstash which is shared with the host OS. Finally, we install nginx and Kibana, and configure Kibana to run on port 5601 (by linking the nginx conf file to <a href="https://github.com/comperiosearch/vagrant-elk-box/blob/master/confs/nginx/default">this file</a> in the Vagrant directory also).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.comperiosearch.com/blog/2014/08/14/elk-one-vagrant-box/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
	</channel>
</rss>
