In de brede digitale wereld voldoen veel zoektools niet aan de behoeften van gevorderde gebruikers. Deze gids introduceert Elasticsearch, een krachtige zoek- en analyseomgeving. Met behulp van Ubuntu laten we je zien hoe je Elasticsearch op Ubuntu 22.04 installeert, zodat het ophalen en analyseren van data efficiënter wordt voor developers, data-analisten en beginnende datawetenschappers.
Als je klaar bent om aan de slag te gaan met Elasticsearch en het volledige potentieel van je data te benutten, beginnen we met wat basisinformatie over Elasticsearch voordat we naar de installatie gaan. Aan het einde van deze gids heb je een volledig werkende Elasticsearch-installatie op je Ubuntu-systeem staan.
Wat is Elasticsearch?
Laten we beginnen met een korte uitleg van Elasticsearch en de belangrijkste nuttige API voordat we verder gaan met de Elasticsearch-tutorial. Elasticsearch is een zoek- en analyseomgeving die gebouwd is op Apache Lucene en grote hoeveelheden data moeiteloos verwerkt. Het blinkt uit in het afhandelen van enorme datavolumes en levert razendsnel zoekresultaten. Elasticsearch wordt veel gebruikt voor log-analyse, full-text search en realtime analyse. Data wordt gedistribueerd opgeslagen: verdeeld in shards die over een cluster van nodes worden gespreid. Deze aanpak zorgt voor hoge beschikbaarheid en fouttolerantie.
Elasticsearch staat bekend om zijn uitgebreide RESTful API. Via deze API kunnen gebruikers met Elasticsearch communiceren via eenvoudige HTTP-verzoeken. Deze verzoeken zijn vaak opgebouwd als JSON-payloads en ondersteunen bewerkingen zoals indexeren, zoeken, bijwerken en verwijderen van documenten.
De RESTful API volgt de principes van Representational State Transfer (REST), een architectuurstijl voor het ontwerpen van gedistribueerde applicaties. Er wordt gebruik gemaakt van standaard HTTP-methoden zoals GET, POST, PUT, DELETE en meer om te communiceren met Elasticsearch-resources.
Om een nieuw document te indexeren, stuur je een POST-verzoek met het JSON-document naar het /index_name/_doc endpoint. Als je documenten wilt zoeken, stuur je een GET-verzoek met je zoekparameters naar het /index_name/_search endpoint om resultaten op te halen.
De RESTful API biedt bovendien uitgebreide querymogelijkheden, waaronder complexe zoekopdrachten met verschillende querytypen, filters, aggregaties en sorteeropties. Je kunt relevantie aanpassen, full-text of geo-zoekopdrachten uitvoeren en nog veel meer. Tot slot biedt Elasticsearch clientbibliotheken in meerdere programmeertalen om integratie met applicaties te vereenvoudigen. Kortom: de gedistribueerde architectuur van Elasticsearch, gecombineerd met de toegankelijke RESTful API, maakt het een sterk platform voor zoek- en analyseoplossingen.
Elasticsearch-tutorial: Elasticsearch installeren op Ubuntu
Nu is het tijd om Elasticsearch op Ubuntu te installeren. Ik loop je stap voor stap door de installatie van Elasticsearch op Ubuntu 22.04, zodat je het gemakkelijk kunt volgen en uitvoeren. Daarna behandel ik ook een aantal basisfuncties, zodat je snel vertrouwd raakt met de mogelijkheden. Laten we beginnen.
Stap 1: Werk je Ubuntu bij
Voordat je begint met het installeren van Elasticsearch Ubuntu, is het verstandig om eerst de systeempakketten bij te werken. Voer daarvoor de volgende twee commando's uit in de terminal:
sudo apt update
sudo apt upgrade
Stap 2: Installeer Java
Elasticsearch draait op Java, dus we moeten dit installeren op onze Ubuntu om het installatieproces van Elasticsearch soepel te laten verlopen. OpenJDK is een open-source versie van Java die eenvoudiger te installeren is en vaak beter presteert. Gebruik het volgende commando om Java via OpenJDK te installeren:
sudo apt install openjdk-11-jdk
Stap 3: Download Elasticsearch
Met een bijgewerkt systeem en een werkende Java-installatie kunnen we beginnen met het installeren van Elasticsearch op Ubuntu. Ga eerst naar de officiële Elasticsearch-website om de meest recente downloadlink te vinden. Kopieer daarna de link en gebruik de "wget commando om Elasticsearch snel te downloaden. Hier is een stapsgewijs voorbeeld:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-amd64.deb
Stap 4: Installeer Elasticsearch Ubuntu en configureer
Zodra het downloaden van Ubuntu Elasticsearch is voltooid, kun je de gedownloade bestanden installeren. Voer hiervoor het volgende commando in:
sudo dpkg -i elasticsearch-7.14.0-amd64.deb
De opgegeven opdracht herkent het gedownloade Elasticsearch-bestand en start het uitpakken om Elasticsearch te installeren op Ubuntu. Na de installatie moet je bepalen of Elasticsearch alleen naar de lokale machine mag luisteren. Standaard is dit onbeperkt, maar veel gebruikers kiezen voor een beperktere configuratie. Pas deze instelling aan door het opgegeven bestand te openen in een teksteditor:
sudo nano /etc/elasticsearch/elasticsearch.yml
Zoek vervolgens in het bestand de regel die begint met de tekst "# network.host en verwijder de # aan het begin van de regel. Dit stelt de waarde in op localhost, zodat Elasticsearch alleen luistert op de lokale machine. Als je deze wijziging niet wilt doorvoeren, sla dan het tweede deel van stap 4 over.
Stap 5: Start Elasticsearch en test het
Nu kun je het programma uitvoeren na de geslaagde bewerking en Elasticsearch Ubuntu 22.04 installeren. Start de Elasticsearch-service met deze opdrachtregel:
sudo systemctl start elasticsearch
Wacht tot het programma is geladen. Je kunt het programma ook automatisch laten starten bij het opstarten van het systeem met deze regel:
sudo systemctl enable elasticsearch
Om te controleren of je Elasticsearch-installatie correct werkt met je server, voer je het onderstaande commando uit. Dit commando stuurt een HTTP-verzoek naar je server en geeft een JSON-respons terug. Ontvang je die JSON-respons, dan is je Elasticsearch-installatie geslaagd en werkt alles naar behoren. Voer de onderstaande regel niet in de terminal in, maar in een browser:
http://localhost:9200
Stap 6: Elasticsearch beveiligen op Ubuntu
Je Elasticsearch-cluster kan al snel cruciale project- en serverdata bevatten die je niet in verkeerde handen wilt laten vallen. Het is daarom verstandig om na het doorlopen van het hoofdgedeelte van deze installatiegids voor Elasticsearch Ubuntu ook de beveiliging van je Elasticsearch-instantie aan te pakken. Begin daarmee door het volgende configuratiebestand opnieuw te openen in een teksteditor:
sudo nano /etc/elasticsearch/elasticsearch.yml
Zoek de volgende regel en verwijder de # bij het begin
xpack.security.enabled: true
Dit activeert de basisbeveiliging van Elasticsearch. Sla de wijzigingen op en sluit de editor. Nu is het tijd om wachtwoorden in te stellen voor de ingebouwde gebruikers van Elasticsearch. Gebruik deze opdracht om de interactieve shell van Elasticsearch te openen:
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
Hier word je gevraagd een wachtwoord in te stellen voor elk van de ingebouwde gebruikersaccounts van Elasticsearch. Kies wachtwoorden die moeilijk te raden zijn, maar die je zelf goed kunt onthouden. Als laatste stap kun je de firewall inschakelen om Elasticsearch nog beter te beveiligen. Dit is optioneel en misschien niet nodig, maar het kan geen kwaad:
sudo apt install ufw
sudo ufw enable
Zodra de firewall is geopend en ingeschakeld, gebruik je de volgende regels om verbindingen te beperken tot de twee poorten die Elasticsearch gebruikt. Dit voorkomt ongewenst en mogelijk schadelijk inkomend verkeer:
sudo ufw allow 9200
sudo ufw allow 9300
Voer tot slot een herstart uit van Elasticsearch om de wijzigingen te bevestigen:
sudo systemctl restart elasticsearch
Gefeliciteerd! Je hebt Elasticsearch succesvol geïnstalleerd op Ubuntu én de beveiliging ervan versterkt. Om Elasticsearch en de krachtige API optimaal te gebruiken, zorg je dat je de juiste inloggegevens (gebruikersnaam en wachtwoord) invoert voor de aangemaakte gebruikers. Houd Elasticsearch altijd up-to-date en volg de beste beveiligingspraktijken om een veilige omgeving te garanderen.
Samenvatting
Elasticsearch succesvol installeren op Ubuntu opent de deur naar krachtigere zoekopdrachten en data-analyse. Door de installatiehandleiding te volgen en beveiligingsinstellingen toe te passen, bescherm je je gegevens. Eenmaal operationeel biedt de API van Elasticsearch een eenvoudige manier om te indexeren, te zoeken en documenten bij te werken. Elasticsearch volledig benutten vergt wat tijd, maar de uitgebreide documentatie helpt je de geavanceerde functies te doorgronden. Ga aan de slag met Elasticsearch op Ubuntu en profiteer van de snelheid, schaalbaarheid en uitgebreide mogelijkheden voor data-analyse.
Voordat je weggaat: wil je Elasticsearch op Ubuntu naar een hoger niveau tillen? Ontdek de krachtige mogelijkheden van Cloudzy's Linux VPS. Met de Ubuntu-versie van onze Linux VPS kun je een krachtige Elasticsearch-server hosten op meer dan 12 locaties wereldwijd, voor een goede latency. Onze beveiligingsmaatregelen houden je beschermd. Betaal met een breed scala aan reguliere en anonieme betaalmethoden en kies een premium Ubuntu VPS, met een uptime van 99,95%, en pas alles wat je in deze Elasticsearch-tutorial hebt geleerd direct toe!
De voor de hand liggende keuze
De meeste Linux-servers draaien op Ubuntu. Waarom jij nog niet? Ontdek waarom iedereen voor Ubuntu kiest en start met een geoptimaliseerde Ubuntu VPS
Haal je Ubuntu VPSVeelgestelde vragen
Wat is het verschil tussen Elasticsearch en Apache Lucene?
Elasticsearch is gebouwd op Apache Lucene, een krachtige full-text zoekbibliotheek. Lucene verzorgt de basisfuncties voor indexering en zoeken, maar Elasticsearch voegt daar functies aan toe zoals gedistribueerde verwerking, schaalbaarheid en een gebruiksvriendelijke API, speciaal geoptimaliseerd voor gedistribueerde omgevingen.
Hoe gaat Elasticsearch om met dataredundantie en fouttolerantie?
Elasticsearch realiseert dataredundantie en fouttolerantie via zijn gedistribueerde architectuur. Data wordt opgesplitst in meerdere shards en verdeeld over de nodes in een cluster. Elke shard heeft ingebouwde replicatie, zodat data altijd op meerdere nodes beschikbaar is. Als een node uitvalt, haalt Elasticsearch de data op uit de gerepliceerde shards op andere nodes, wat een hoge beschikbaarheid garandeert.
Kan Elasticsearch worden gebruikt voor real-time analytics?
Ja, Elasticsearch leent zich uitstekend voor real-time analytics. Dankzij near real-time indexering worden data snel bijgewerkt en opgehaald. In combinatie met krachtige aggregaties maakt Elasticsearch snelle data-analyse en visualisatie mogelijk, wat het een populaire keuze maakt voor real-time analyticsscenario's.
Kan Elasticsearch worden gebruikt voor georuimtelijke data?
Ja, Elasticsearch biedt uitgebreide ondersteuning voor georuimtelijke data. Het beschikt over functies zoals georuimtelijke indexering en zoekopdrachten, waarmee gebruikers documenten kunnen indexeren op geografische coördinaten, afstandsberekeningen kunnen uitvoeren en locatiegebaseerde filters en aggregaties kunnen toepassen. De georuimtelijke mogelijkheden zijn goed gedocumenteerd en breed erkend.
Kan ik Elasticsearch gebruiken voor logging en loganalyse?
Zeker. Elasticsearch wordt veelvuldig ingezet voor loganalyse en gecentraliseerde logging. Door logs in Elasticsearch in te lezen, kun je logdata near real-time doorzoeken, analyseren en visualiseren. In combinatie met tools zoals Logstash en Kibana vormt Elasticsearch de ELK-stack (Elasticsearch, Logstash, Kibana), die populair is voor logbeheer en -analyse.