How to Run Solr on Docker and Why

Sematext Group, Inc.
Sematext Group, Inc. Sematext Group, Inc.
O C T O B E R 1 1 - 1 4 , 2 0 1 6 • B O S T O N , M A
How to run Solr on Docker. And why.
Rafał Kuć, Radu Gheorghe
Sematext Group, Inc.
3
01
Next ~40 minutes
4
02
Common issues we all know
overprovisioned
serversresources not utilized
!= != !=
differences in environments
$$$money loss
5
02
One of the solutions
productionQAtestdevelopment
6
03
Bare metal
Hardware
Operating System
Libraries
Application Application
bare metal
7
03
Traditional virtual machine
Hardware
Operating System
Libraries
bare metal
Hardware
Host Operating System
Hypervisor
Guest OS Guest OS
Libraries Libraries
Application Application
Application Application
traditional VM
8
03
Docker container
Hardware
Operating System
Libraries
bare metal
Hardware
Host Operating System
traditional VM
Hypervisor
Guest OS Guest OS
Libraries Libraries
Application Application
Hardware
Host Operating System
Docker Engine
Libraries Libraries
Application Application
Application Application
container
9
03
Unikernel architecture
Hardware
Operating System
Libraries
bare metal
Hardware
Host Operating System
traditional VM
Hypervisor
Guest OS Guest OS
Libraries Libraries
Application Application
Hardware
Host Operating System
container
Docker Engine
Libraries Libraries
Application Application
Hardware
unikernel
Kernel + App + Libs Application Application
Host Operating System
Hypervisor
10
01
Solr + Docker how to
+
11
01
Docker + Solr – how to
docker run solr:latest
docker run -p 8983:8983 solr:latest
docker run --name lr_single_solr -d -p 8983:8983 -t solr:6.2.1
docker run --name lr_alpine_solr -d -p 8983:8983 -t solr:6.2-alpine
docker run -it --name lr_solr_mem -p 8983:8983 -d -m 1G solr:6.2.1
docker run -p 8983:8983 -d --memory-swappiness=0 solr:6.2.1
docker run -it --cpuset-cpus="0,1" -p 8983:8983 -d solr:6.2.1
docker run --name solr_one -d -p 8983:8983 –p 9983:9983 -t solr:6.2.1 -c
docker run --name solr_two -d --link solr_one -p 6983:6983 -t solr:6.2.1 -z
solr_one:9983
12
01
Demo time!
https://github.com/sematext/lucene-revolution-samples/tree/master/2016/solr_docker
DEMO
TIME
13
01
14
01
Very simple test infrastructure
Ubuntu + Solr 6.2
Ubuntu + Docker 1.12.2 (native)
VMs (Ubuntu) + Solr 6.2
15
01
Solr configuration – collection
16
01
Solr configuration
10 stored fields Hard commit – 15 sec
10 indexed fields Soft commit - 1 sec
7 doc values
17
01
Other parts
Completely out of the box experience!
18
01
Ubuntu + Solr, 1 Solr instance
Test 1
Indexing throughput - 3348 docs/sec
Test 2
Indexing throughput - 2754 docs/sec
Querying throughput - 209 q/sec
Sprzedaż
CPU Mem I/O
19
01
Ubuntu + Solr, 4 Solr instances
Test 1
Indexing throughput - 3618docs/sec
Test 2
Indexing throughput - 3024 docs/sec
Querying throughput - 267,7 q/sec
Sprzedaż
CPU Mem I/O
20
01
Ubuntu + 1 VM, 1 Solr instance
Test 1
Indexing throughput - 2052 docs/sec
Test 2
Indexing throughput - 1944 docs/sec
Querying throughput - 36,7 q/sec
Sprzedaż
CPU Mem I/O
21
01
Ubuntu + Docker, 4 Solr instances
Test 1
Indexing throughput - 2754 docs/sec
Test 2
Indexing throughput - 2484 docs/sec
Querying throughput - 108,6 q/sec
Sprzedaż
CPU Mem I/O
22
01
Performance summary
Test results on OSX != Test results on Linux
Bare metal is the fastest from those tested
Docker will be faster than traditional VM
Bare metal > Docker > VMs
23
01
24
01
Bare metal based architecture
One per machine vs Multiple per machine
Multiple per machine may be a better choice
Harder to scale -> machine provisioning needed
Full control over resources
Noisy neighbour problems can appear
Best or almost best performance
25
01
Virtual machine based architecture
Multiple VMs per machine allowed
Easy to scale, but requires preparation
Clear boundaries between VM
Guest operating system overhead
Worst performance compared to the rest
26
01
Docker based architecture
Multiple per host easily possible
Easy to scale until host resources allow
Easily add constraints per container
Low overhead compared to traditional VM
Native on Linux == best possible performance
27
01
http://cliparts.co/clipart/3733708
28
01
Should I care about Solr?
Tuning is still needed,
no matter what ENV you use
Keep in mind ENV constraints
Watch out for:
- merges – adjust or split data
- memory issues
- I/O subsystem
- CPU utilization
- garbage collection
- proper Solr configuration
29
01
Should I care about Docker?
Docker reports events
We can listen and react to events
Example of events to react to
- kill
- start
- stop
- destroy
- die
- restart
- pause
- unpause
- oom
30
01
Should I care about Docker volumes?
Docker volumes also report events
We can listen and react to those as well
We can automatically react to:
- create
- mount
- unmount
- destroy
31
01
Solr + Docker, should I?
Yes, when in need of dynamic scaling
Yes, when in need of resources utilization
Lots of nodes
-> look at swarm, mesos and
kubernetes
32
01
Thank you! If you want to get in touch
Rafał
rafal.kuc@sematext.com
@kucrafal
Radu
radu.gheorghe@sematext.com
@radu0gheorghe
http://sematext.com
@sematext
Join US!
http://sematext.com/jobs/
1 of 32

Recommended

Solr Search Engine: Optimize Is (Not) Bad for You by
Solr Search Engine: Optimize Is (Not) Bad for YouSolr Search Engine: Optimize Is (Not) Bad for You
Solr Search Engine: Optimize Is (Not) Bad for YouSematext Group, Inc.
10K views94 slides
Consumer offset management in Kafka by
Consumer offset management in KafkaConsumer offset management in Kafka
Consumer offset management in KafkaJoel Koshy
63.2K views39 slides
Fast analytics kudu to druid by
Fast analytics  kudu to druidFast analytics  kudu to druid
Fast analytics kudu to druidWorapol Alex Pongpech, PhD
337 views36 slides
The basics of fluentd by
The basics of fluentdThe basics of fluentd
The basics of fluentdTreasure Data, Inc.
29.1K views37 slides
Solr on Docker - the Good, the Bad and the Ugly by
Solr on Docker - the Good, the Bad and the UglySolr on Docker - the Good, the Bad and the Ugly
Solr on Docker - the Good, the Bad and the UglySematext Group, Inc.
15.5K views21 slides
Side by Side with Elasticsearch & Solr, Part 2 by
Side by Side with Elasticsearch & Solr, Part 2Side by Side with Elasticsearch & Solr, Part 2
Side by Side with Elasticsearch & Solr, Part 2Sematext Group, Inc.
18.2K views39 slides

More Related Content

What's hot

Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1 by
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1SolarWinds
1.5K views41 slides
How Kafka Powers the World's Most Popular Vector Database System with Charles... by
How Kafka Powers the World's Most Popular Vector Database System with Charles...How Kafka Powers the World's Most Popular Vector Database System with Charles...
How Kafka Powers the World's Most Popular Vector Database System with Charles...HostedbyConfluent
1K views28 slides
Microservices with Apache Camel, DDD, and Kubernetes by
Microservices with Apache Camel, DDD, and KubernetesMicroservices with Apache Camel, DDD, and Kubernetes
Microservices with Apache Camel, DDD, and KubernetesChristian Posta
2.9K views33 slides
YARN Federation by
YARN Federation YARN Federation
YARN Federation DataWorks Summit/Hadoop Summit
2.5K views19 slides
Koalas: Making an Easy Transition from Pandas to Apache Spark by
Koalas: Making an Easy Transition from Pandas to Apache SparkKoalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache SparkDatabricks
1.8K views33 slides
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook by
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookThe Hive
16.7K views101 slides

What's hot(20)

Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1 by SolarWinds
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
SolarWinds1.5K views
How Kafka Powers the World's Most Popular Vector Database System with Charles... by HostedbyConfluent
How Kafka Powers the World's Most Popular Vector Database System with Charles...How Kafka Powers the World's Most Popular Vector Database System with Charles...
How Kafka Powers the World's Most Popular Vector Database System with Charles...
Microservices with Apache Camel, DDD, and Kubernetes by Christian Posta
Microservices with Apache Camel, DDD, and KubernetesMicroservices with Apache Camel, DDD, and Kubernetes
Microservices with Apache Camel, DDD, and Kubernetes
Christian Posta2.9K views
Koalas: Making an Easy Transition from Pandas to Apache Spark by Databricks
Koalas: Making an Easy Transition from Pandas to Apache SparkKoalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache Spark
Databricks1.8K views
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook by The Hive
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
The Hive16.7K views
Achieving Continuous Availability for Your Applications with Oracle MAA by Markus Michalewicz
Achieving Continuous Availability for Your Applications with Oracle MAAAchieving Continuous Availability for Your Applications with Oracle MAA
Achieving Continuous Availability for Your Applications with Oracle MAA
Markus Michalewicz112 views
Getting The Best Performance With PySpark by Spark Summit
Getting The Best Performance With PySparkGetting The Best Performance With PySpark
Getting The Best Performance With PySpark
Spark Summit27.2K views
Log analysis using elk by Rushika Shah
Log analysis using elkLog analysis using elk
Log analysis using elk
Rushika Shah663 views
The Parquet Format and Performance Optimization Opportunities by Databricks
The Parquet Format and Performance Optimization OpportunitiesThe Parquet Format and Performance Optimization Opportunities
The Parquet Format and Performance Optimization Opportunities
Databricks8.2K views
Elastic Stack Introduction by Vikram Shinde
Elastic Stack IntroductionElastic Stack Introduction
Elastic Stack Introduction
Vikram Shinde7.9K views
AIOUG-GroundBreakers-Jul 2019 - 19c RAC by Sandesh Rao
AIOUG-GroundBreakers-Jul 2019 - 19c RACAIOUG-GroundBreakers-Jul 2019 - 19c RAC
AIOUG-GroundBreakers-Jul 2019 - 19c RAC
Sandesh Rao643 views
UKOUG - 25 years of hints and tips by Connor McDonald
UKOUG - 25 years of hints and tipsUKOUG - 25 years of hints and tips
UKOUG - 25 years of hints and tips
Connor McDonald289 views
Internals of Speeding up PySpark with Arrow by Databricks
 Internals of Speeding up PySpark with Arrow Internals of Speeding up PySpark with Arrow
Internals of Speeding up PySpark with Arrow
Databricks993 views
Hybrid Data Guard to Cloud GEN2 ExaCS.pdf by ALI ANWAR, OCP®
Hybrid Data Guard to Cloud GEN2 ExaCS.pdfHybrid Data Guard to Cloud GEN2 ExaCS.pdf
Hybrid Data Guard to Cloud GEN2 ExaCS.pdf
ALI ANWAR, OCP®139 views
톰캣 운영 노하우 by jieunsys
톰캣 운영 노하우톰캣 운영 노하우
톰캣 운영 노하우
jieunsys24.4K views
Oracle Database Performance Tuning Concept by Chien Chung Shen
Oracle Database Performance Tuning ConceptOracle Database Performance Tuning Concept
Oracle Database Performance Tuning Concept
Chien Chung Shen2.2K views
ELK at LinkedIn - Kafka, scaling, lessons learned by Tin Le
ELK at LinkedIn - Kafka, scaling, lessons learnedELK at LinkedIn - Kafka, scaling, lessons learned
ELK at LinkedIn - Kafka, scaling, lessons learned
Tin Le22.6K views
Introduction To Map Reduce by rantav
Introduction To Map ReduceIntroduction To Map Reduce
Introduction To Map Reduce
rantav106.2K views
Best practices for highly available and large scale SolrCloud by Anshum Gupta
Best practices for highly available and large scale SolrCloudBest practices for highly available and large scale SolrCloud
Best practices for highly available and large scale SolrCloud
Anshum Gupta4.1K views

Viewers also liked

SolrCloud on Hadoop by
SolrCloud on HadoopSolrCloud on Hadoop
SolrCloud on HadoopAlex Moundalexis
4.9K views47 slides
Effective Hive Queries by
Effective Hive QueriesEffective Hive Queries
Effective Hive QueriesQubole
1.5K views14 slides
Cross Datacenter Replication in Apache Solr 6 by
Cross Datacenter Replication in Apache Solr 6Cross Datacenter Replication in Apache Solr 6
Cross Datacenter Replication in Apache Solr 6Shalin Shekhar Mangar
2.3K views24 slides
転置インデックスとTop k-query by
転置インデックスとTop k-query転置インデックスとTop k-query
転置インデックスとTop k-query正志 坪坂
11.9K views82 slides
DSIRNLP#1 ランキング学習ことはじめ by
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめsleepy_yoshi
34.1K views97 slides
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016 by
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016Yota Ishida
60.8K views44 slides

Viewers also liked(20)

Effective Hive Queries by Qubole
Effective Hive QueriesEffective Hive Queries
Effective Hive Queries
Qubole1.5K views
転置インデックスとTop k-query by 正志 坪坂
転置インデックスとTop k-query転置インデックスとTop k-query
転置インデックスとTop k-query
正志 坪坂11.9K views
DSIRNLP#1 ランキング学習ことはじめ by sleepy_yoshi
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめ
sleepy_yoshi34.1K views
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016 by Yota Ishida
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
Yota Ishida60.8K views
リクルートにおける画像解析事例紹介 by Recruit Technologies
リクルートにおける画像解析事例紹介リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
Recruit Technologies104.5K views
Java 9 and Future #jjug by Yuji Kubota
Java 9 and Future #jjugJava 9 and Future #jjug
Java 9 and Future #jjug
Yuji Kubota5.1K views
VMの歩む道。 Dalvik、ART、そしてJava VM by yy yank
VMの歩む道。 Dalvik、ART、そしてJava VMVMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
yy yank14.5K views
Java libraries you can't afford to miss by Andres Almiray
Java libraries you can't afford to missJava libraries you can't afford to miss
Java libraries you can't afford to miss
Andres Almiray12K views
Jjugccc2017spring-postgres-ccc_m1 by Kosuke Kida
Jjugccc2017spring-postgres-ccc_m1Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1
Kosuke Kida7.8K views
2017spring jjug ccc_f2 by Kazuhiro Wada
2017spring jjug ccc_f22017spring jjug ccc_f2
2017spring jjug ccc_f2
Kazuhiro Wada9.9K views
Kotlin is charming; The reasons Java engineers should start Kotlin. by JustSystems Corporation
Kotlin is charming; The reasons Java engineers should start Kotlin.Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.
Arachne Unweaved (JP) by Ikuru Kanuma
Arachne Unweaved (JP)Arachne Unweaved (JP)
Arachne Unweaved (JP)
Ikuru Kanuma5.5K views
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~ by Hiroyuki Ohnaka
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Hiroyuki Ohnaka10.3K views
U-NEXT学生インターン、過激なJavaの学び方と過激な要求 by hajime funaki
U-NEXT学生インターン、過激なJavaの学び方と過激な要求U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
hajime funaki7.6K views
SpotBugs(FindBugs)による 大規模ERPのコード品質改善 by Works Applications
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications14K views
Polyglot on the JVM with Graal (English) by Logico
Polyglot on the JVM with Graal (English)Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)
Logico 5.4K views

Similar to How to Run Solr on Docker and Why

Introduction to Docker by
Introduction to DockerIntroduction to Docker
Introduction to DockerNissan Dookeran
707 views40 slides
Solr 4 highlights - Mark Miller by
Solr 4 highlights - Mark MillerSolr 4 highlights - Mark Miller
Solr 4 highlights - Mark Millerlucenerevolution
2.2K views31 slides
Automating Yourself Out of Trouble by
Automating Yourself Out of TroubleAutomating Yourself Out of Trouble
Automating Yourself Out of TroubleJose De La Rosa
1.2K views50 slides
The State of Linux Containers by
The State of Linux ContainersThe State of Linux Containers
The State of Linux Containersinside-BigData.com
1.6K views44 slides
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKS by
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKSAzure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKS
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKSazuredayit
41 views31 slides
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl... by
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...Odinot Stanislas
8.9K views75 slides

Similar to How to Run Solr on Docker and Why(20)

Automating Yourself Out of Trouble by Jose De La Rosa
Automating Yourself Out of TroubleAutomating Yourself Out of Trouble
Automating Yourself Out of Trouble
Jose De La Rosa1.2K views
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKS by azuredayit
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKSAzure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKS
Azure Day Rome Reloaded 2019 - Deconstructing Kubernetes using AKS
azuredayit41 views
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl... by Odinot Stanislas
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...
Bare-metal, Docker Containers, and Virtualization: The Growing Choices for Cl...
Odinot Stanislas8.9K views
Oracle Enterprise Manager 12c - OEM12c Presentation by Francisco Alvarez
Oracle Enterprise Manager 12c - OEM12c PresentationOracle Enterprise Manager 12c - OEM12c Presentation
Oracle Enterprise Manager 12c - OEM12c Presentation
Francisco Alvarez7.2K views
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo) by Boden Russell
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
LXC – NextGen Virtualization for Cloud benefit realization (cloudexpo)
Boden Russell1.7K views
Docker: do's and don'ts by Paolo Tonin
Docker: do's and don'tsDocker: do's and don'ts
Docker: do's and don'ts
Paolo Tonin505 views
SFBay Area Solr Meetup - June 18th: Benchmarking Solr Performance by Lucidworks (Archived)
SFBay Area Solr Meetup - June 18th: Benchmarking Solr PerformanceSFBay Area Solr Meetup - June 18th: Benchmarking Solr Performance
SFBay Area Solr Meetup - June 18th: Benchmarking Solr Performance
Containers and Nutanix - Acropolis Container Services by NEXTtour
Containers and Nutanix - Acropolis Container ServicesContainers and Nutanix - Acropolis Container Services
Containers and Nutanix - Acropolis Container Services
NEXTtour3.5K views
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ... by In-Memory Computing Summit
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
Docker and friends at Linux Days 2014 in Prague by tomasbart
Docker and friends at Linux Days 2014 in PragueDocker and friends at Linux Days 2014 in Prague
Docker and friends at Linux Days 2014 in Prague
tomasbart2.8K views
Docker and kubernetes by Dongwon Kim
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
Dongwon Kim5.6K views
Docker and coreos20141020b by Richard Kuo
Docker and coreos20141020bDocker and coreos20141020b
Docker and coreos20141020b
Richard Kuo622 views
Kubernetes Failure Stories - KubeCon Europe Barcelona by Henning Jacobs
Kubernetes Failure Stories - KubeCon Europe BarcelonaKubernetes Failure Stories - KubeCon Europe Barcelona
Kubernetes Failure Stories - KubeCon Europe Barcelona
Henning Jacobs728 views
ONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin by Nat Morris
ONIE: Open Network Install Environment @ OSDC 2014 Netways, BerlinONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
ONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
Nat Morris2.2K views

More from Sematext Group, Inc.

Tweaking the Base Score: Lucene/Solr Similarities Explained by
Tweaking the Base Score: Lucene/Solr Similarities ExplainedTweaking the Base Score: Lucene/Solr Similarities Explained
Tweaking the Base Score: Lucene/Solr Similarities ExplainedSematext Group, Inc.
8.6K views53 slides
OOPs, OOMs, oh my! Containerizing JVM apps by
OOPs, OOMs, oh my! Containerizing JVM appsOOPs, OOMs, oh my! Containerizing JVM apps
OOPs, OOMs, oh my! Containerizing JVM appsSematext Group, Inc.
1.5K views25 slides
Is observability good for your brain? by
Is observability good for your brain?Is observability good for your brain?
Is observability good for your brain?Sematext Group, Inc.
751 views28 slides
Introducing log analysis to your organization by
Introducing log analysis to your organization Introducing log analysis to your organization
Introducing log analysis to your organization Sematext Group, Inc.
3.5K views106 slides
Monitoring and Log Management for by
Monitoring and Log Management forMonitoring and Log Management for
Monitoring and Log Management forSematext Group, Inc.
14.5K views42 slides
Introduction to solr by
Introduction to solrIntroduction to solr
Introduction to solrSematext Group, Inc.
860 views21 slides

More from Sematext Group, Inc. (20)

Tweaking the Base Score: Lucene/Solr Similarities Explained by Sematext Group, Inc.
Tweaking the Base Score: Lucene/Solr Similarities ExplainedTweaking the Base Score: Lucene/Solr Similarities Explained
Tweaking the Base Score: Lucene/Solr Similarities Explained
Building Resilient Log Aggregation Pipeline with Elasticsearch & Kafka by Sematext Group, Inc.
Building Resilient Log Aggregation Pipeline with Elasticsearch & KafkaBuilding Resilient Log Aggregation Pipeline with Elasticsearch & Kafka
Building Resilient Log Aggregation Pipeline with Elasticsearch & Kafka
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker by Sematext Group, Inc.
Running High Performance & Fault-tolerant Elasticsearch Clusters on DockerRunning High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Running High Performance & Fault-tolerant Elasticsearch Clusters on Docker
Sematext Group, Inc. 10.5K views
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker by Sematext Group, Inc.
Running High Performance and Fault Tolerant Elasticsearch Clusters on DockerRunning High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Sematext Group, Inc. 38.1K views
Large Scale Log Analytics with Solr (from Lucene Revolution 2015) by Sematext Group, Inc.
Large Scale Log Analytics with Solr (from Lucene Revolution 2015)Large Scale Log Analytics with Solr (from Lucene Revolution 2015)
Large Scale Log Analytics with Solr (from Lucene Revolution 2015)
Sematext Group, Inc. 11.8K views
From Zero to Production Hero: Log Analysis with Elasticsearch (from Velocity ... by Sematext Group, Inc.
From Zero to Production Hero: Log Analysis with Elasticsearch (from Velocity ...From Zero to Production Hero: Log Analysis with Elasticsearch (from Velocity ...
From Zero to Production Hero: Log Analysis with Elasticsearch (from Velocity ...
Sematext Group, Inc. 14.1K views
Metrics, Logs, Transaction Traces, Anomaly Detection at Scale by Sematext Group, Inc.
Metrics, Logs, Transaction Traces, Anomaly Detection at ScaleMetrics, Logs, Transaction Traces, Anomaly Detection at Scale
Metrics, Logs, Transaction Traces, Anomaly Detection at Scale

Recently uploaded

CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueShapeBlue
139 views15 slides
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...ShapeBlue
129 views10 slides
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
199 views20 slides
Evaluation of Quality of Experience of ABR Schemes in Gaming Stream by
Evaluation of Quality of Experience of ABR Schemes in Gaming StreamEvaluation of Quality of Experience of ABR Schemes in Gaming Stream
Evaluation of Quality of Experience of ABR Schemes in Gaming StreamAlpen-Adria-Universität
38 views34 slides
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOsPriyanka Aash
162 views59 slides
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...ShapeBlue
196 views62 slides

Recently uploaded(20)

CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue139 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue129 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue199 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash162 views
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue196 views
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue178 views
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... by ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue141 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue183 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue162 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc176 views
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue by ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlueCloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
ShapeBlue137 views
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li91 views
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue by ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
ShapeBlue207 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu437 views
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue152 views
Initiating and Advancing Your Strategic GIS Governance Strategy by Safe Software
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
Safe Software184 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays36 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays33 views

How to Run Solr on Docker and Why

  • 1. O C T O B E R 1 1 - 1 4 , 2 0 1 6 • B O S T O N , M A
  • 2. How to run Solr on Docker. And why. Rafał Kuć, Radu Gheorghe Sematext Group, Inc.
  • 4. 4 02 Common issues we all know overprovisioned serversresources not utilized != != != differences in environments $$$money loss
  • 5. 5 02 One of the solutions productionQAtestdevelopment
  • 7. 7 03 Traditional virtual machine Hardware Operating System Libraries bare metal Hardware Host Operating System Hypervisor Guest OS Guest OS Libraries Libraries Application Application Application Application traditional VM
  • 8. 8 03 Docker container Hardware Operating System Libraries bare metal Hardware Host Operating System traditional VM Hypervisor Guest OS Guest OS Libraries Libraries Application Application Hardware Host Operating System Docker Engine Libraries Libraries Application Application Application Application container
  • 9. 9 03 Unikernel architecture Hardware Operating System Libraries bare metal Hardware Host Operating System traditional VM Hypervisor Guest OS Guest OS Libraries Libraries Application Application Hardware Host Operating System container Docker Engine Libraries Libraries Application Application Hardware unikernel Kernel + App + Libs Application Application Host Operating System Hypervisor
  • 11. 11 01 Docker + Solr – how to docker run solr:latest docker run -p 8983:8983 solr:latest docker run --name lr_single_solr -d -p 8983:8983 -t solr:6.2.1 docker run --name lr_alpine_solr -d -p 8983:8983 -t solr:6.2-alpine docker run -it --name lr_solr_mem -p 8983:8983 -d -m 1G solr:6.2.1 docker run -p 8983:8983 -d --memory-swappiness=0 solr:6.2.1 docker run -it --cpuset-cpus="0,1" -p 8983:8983 -d solr:6.2.1 docker run --name solr_one -d -p 8983:8983 –p 9983:9983 -t solr:6.2.1 -c docker run --name solr_two -d --link solr_one -p 6983:6983 -t solr:6.2.1 -z solr_one:9983
  • 13. 13 01
  • 14. 14 01 Very simple test infrastructure Ubuntu + Solr 6.2 Ubuntu + Docker 1.12.2 (native) VMs (Ubuntu) + Solr 6.2
  • 16. 16 01 Solr configuration 10 stored fields Hard commit – 15 sec 10 indexed fields Soft commit - 1 sec 7 doc values
  • 17. 17 01 Other parts Completely out of the box experience!
  • 18. 18 01 Ubuntu + Solr, 1 Solr instance Test 1 Indexing throughput - 3348 docs/sec Test 2 Indexing throughput - 2754 docs/sec Querying throughput - 209 q/sec Sprzedaż CPU Mem I/O
  • 19. 19 01 Ubuntu + Solr, 4 Solr instances Test 1 Indexing throughput - 3618docs/sec Test 2 Indexing throughput - 3024 docs/sec Querying throughput - 267,7 q/sec Sprzedaż CPU Mem I/O
  • 20. 20 01 Ubuntu + 1 VM, 1 Solr instance Test 1 Indexing throughput - 2052 docs/sec Test 2 Indexing throughput - 1944 docs/sec Querying throughput - 36,7 q/sec Sprzedaż CPU Mem I/O
  • 21. 21 01 Ubuntu + Docker, 4 Solr instances Test 1 Indexing throughput - 2754 docs/sec Test 2 Indexing throughput - 2484 docs/sec Querying throughput - 108,6 q/sec Sprzedaż CPU Mem I/O
  • 22. 22 01 Performance summary Test results on OSX != Test results on Linux Bare metal is the fastest from those tested Docker will be faster than traditional VM Bare metal > Docker > VMs
  • 23. 23 01
  • 24. 24 01 Bare metal based architecture One per machine vs Multiple per machine Multiple per machine may be a better choice Harder to scale -> machine provisioning needed Full control over resources Noisy neighbour problems can appear Best or almost best performance
  • 25. 25 01 Virtual machine based architecture Multiple VMs per machine allowed Easy to scale, but requires preparation Clear boundaries between VM Guest operating system overhead Worst performance compared to the rest
  • 26. 26 01 Docker based architecture Multiple per host easily possible Easy to scale until host resources allow Easily add constraints per container Low overhead compared to traditional VM Native on Linux == best possible performance
  • 28. 28 01 Should I care about Solr? Tuning is still needed, no matter what ENV you use Keep in mind ENV constraints Watch out for: - merges – adjust or split data - memory issues - I/O subsystem - CPU utilization - garbage collection - proper Solr configuration
  • 29. 29 01 Should I care about Docker? Docker reports events We can listen and react to events Example of events to react to - kill - start - stop - destroy - die - restart - pause - unpause - oom
  • 30. 30 01 Should I care about Docker volumes? Docker volumes also report events We can listen and react to those as well We can automatically react to: - create - mount - unmount - destroy
  • 31. 31 01 Solr + Docker, should I? Yes, when in need of dynamic scaling Yes, when in need of resources utilization Lots of nodes -> look at swarm, mesos and kubernetes
  • 32. 32 01 Thank you! If you want to get in touch Rafał rafal.kuc@sematext.com @kucrafal Radu radu.gheorghe@sematext.com @radu0gheorghe http://sematext.com @sematext Join US! http://sematext.com/jobs/