From 039da3d35a52412146117c61a61f5a713458a5c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Greg=20Kar=C3=A9kinian?= Date: Fri, 6 Sep 2019 17:24:31 +0200 Subject: [PATCH 1/3] Install Elasticsearch and enable it in Mastodon Refs #96 --- Berksfile | 1 + Berksfile.lock | 6 ++++++ site-cookbooks/kosmos-mastodon/metadata.rb | 3 ++- site-cookbooks/kosmos-mastodon/recipes/default.rb | 14 ++++++++++++++ .../templates/default/env.production.erb | 5 +++++ 5 files changed, 28 insertions(+), 1 deletion(-) diff --git a/Berksfile b/Berksfile index d5228b4..2256783 100644 --- a/Berksfile +++ b/Berksfile @@ -52,3 +52,4 @@ cookbook 'mariadb', '= 0.3.1' cookbook 'ipfs', git: 'https://github.com/67P/ipfs-cookbook.git', ref: 'v0.4.1' +cookbook 'elasticsearch', '= 4.2.0' diff --git a/Berksfile.lock b/Berksfile.lock index 78ada7a..fab450f 100644 --- a/Berksfile.lock +++ b/Berksfile.lock @@ -11,6 +11,7 @@ DEPENDENCIES chef_client_updater (= 1.1.1) compat_resource (= 12.19.0) composer (~> 2.6.1) + elasticsearch (= 4.2.0) firewall (~> 2.6.3) git (= 6.0.0) homebrew (= 3.0.0) @@ -89,6 +90,11 @@ GRAPH php (>= 0.0.0) windows (>= 0.0.0) dmg (4.1.1) + elasticsearch (4.2.0) + apt (>= 0.0.0) + ark (>= 0.0.0) + chef-sugar (>= 0.0.0) + yum (>= 0.0.0) firewall (2.6.5) chef-sugar (>= 0.0.0) git (6.0.0) diff --git a/site-cookbooks/kosmos-mastodon/metadata.rb b/site-cookbooks/kosmos-mastodon/metadata.rb index a718790..35695cb 100644 --- a/site-cookbooks/kosmos-mastodon/metadata.rb +++ b/site-cookbooks/kosmos-mastodon/metadata.rb @@ -4,7 +4,7 @@ maintainer_email 'mail@kosmos.org' license 'MIT' description 'Installs/Configures kosmos-mastodon' long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) -version '0.1.0' +version '0.2.0' depends "kosmos-nginx" depends "kosmos-nodejs" @@ -15,3 +15,4 @@ depends "application_javascript" depends "postgresql" depends "kosmos-postgresql" depends "backup" +depends "elasticsearch" diff --git a/site-cookbooks/kosmos-mastodon/recipes/default.rb b/site-cookbooks/kosmos-mastodon/recipes/default.rb index 99bd11d..f6a7f7d 100644 --- a/site-cookbooks/kosmos-mastodon/recipes/default.rb +++ b/site-cookbooks/kosmos-mastodon/recipes/default.rb @@ -28,6 +28,20 @@ include_recipe "kosmos-nodejs" include_recipe "kosmos-redis" include_recipe "kosmos-postgresql" +elasticsearch_user 'elasticsearch' + +elasticsearch_install 'elasticsearch' do + type 'package' + version '7.3.1' + download_checksum '570af7456603fd103408ed61ccec4473302976d46e1ff845b74a881122977e02' +end + +elasticsearch_configure 'elasticsearch' do + allocated_memory '512m' +end + +elasticsearch_service 'elasticsearch' + # TODO: Remove the condition once we have migrated mastodon to andromeda unless platform?('ubuntu') && node[:platform_version].to_f < 18.04 postgresql_data_bag_item = data_bag_item('credentials', 'postgresql') diff --git a/site-cookbooks/kosmos-mastodon/templates/default/env.production.erb b/site-cookbooks/kosmos-mastodon/templates/default/env.production.erb index d304c97..2c07e80 100644 --- a/site-cookbooks/kosmos-mastodon/templates/default/env.production.erb +++ b/site-cookbooks/kosmos-mastodon/templates/default/env.production.erb @@ -54,3 +54,8 @@ S3_REGION=<%= @s3_region %> # Web Push API VAPID_PRIVATE_KEY=<%= @vapid_private_key %> VAPID_PUBLIC_KEY=<%= @vapid_public_key %> + +# Elasticsearch +ES_ENABLED=true +ES_HOST=localhost +ES_PORT=9200 From 245392c4adcf910d0334b49bf4778a283c4ede04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Greg=20Kar=C3=A9kinian?= Date: Tue, 10 Sep 2019 12:29:24 +0200 Subject: [PATCH 2/3] Install Elasticsearch 6.8.2 Version 7 isn't compatible with Mastodon yet --- site-cookbooks/kosmos-mastodon/recipes/default.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/site-cookbooks/kosmos-mastodon/recipes/default.rb b/site-cookbooks/kosmos-mastodon/recipes/default.rb index f6a7f7d..f21e444 100644 --- a/site-cookbooks/kosmos-mastodon/recipes/default.rb +++ b/site-cookbooks/kosmos-mastodon/recipes/default.rb @@ -32,8 +32,7 @@ elasticsearch_user 'elasticsearch' elasticsearch_install 'elasticsearch' do type 'package' - version '7.3.1' - download_checksum '570af7456603fd103408ed61ccec4473302976d46e1ff845b74a881122977e02' + version '6.8.2' end elasticsearch_configure 'elasticsearch' do From fdb4353ac0e17eb0e4c6a3759a2fc0b1020e6826 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Greg=20Kar=C3=A9kinian?= Date: Wed, 11 Sep 2019 11:21:10 +0200 Subject: [PATCH 3/3] Raise the memory limit for Elasticsearch --- site-cookbooks/kosmos-mastodon/recipes/default.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site-cookbooks/kosmos-mastodon/recipes/default.rb b/site-cookbooks/kosmos-mastodon/recipes/default.rb index f21e444..0e4dba9 100644 --- a/site-cookbooks/kosmos-mastodon/recipes/default.rb +++ b/site-cookbooks/kosmos-mastodon/recipes/default.rb @@ -36,7 +36,7 @@ elasticsearch_install 'elasticsearch' do end elasticsearch_configure 'elasticsearch' do - allocated_memory '512m' + allocated_memory '1536m' end elasticsearch_service 'elasticsearch'