Elasticsearch unter Ubuntu installieren

Elasticsearch ist eine Suchmaschine, welche in vielen Lösungen zum Einsatz kommt. Seit der Lizenzänderung vor ein paar Wochen ist Elasticsearch keine freie Software mehr, wird aber trotzdem in vielen Lösungen genutzt, welche noch nicht auf eventuelle freie Forks ausgewichen sind. Soll Elasticsearch unter Ubuntu installiert werden, so kann dies über den Paketmanager installiert werden. Im ersten Schritt muss das Paket apt-transport-https nachinstalliert werden:

apt install apt-transport-https

Anschließend kann die Fremdpaketquelle hinzugefügt werden:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list

Diese wird benötigt, da Elasticsearch nicht in den offiziellen Paketquellen von Ubuntu enthalten ist. Damit die Installation über das Paket funktioniert, sollte der entsprechende Schlüssel hinzugefügt werden:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -

Sollte beim Aufruf des Kommandos die Meldung:

E: gnupg, gnupg2 and gnupg1 do not seem to be installed, but one of them is required for this operation

erscheinen, muss das entsprechende Paket nachinstalliert werden:

apt install gnupg2

Anschließend kann Elasticsearch installiert werden:

apt-get update && sudo apt-get install elasticsearch

Standardmäßig ist Elasticsearch nach der Installation nur über den Localhost am Port 9200 erreichbar. Um dies zu ändern, muss die Konfiguration angepasst werden. Diese befindet sich im Ordner /etc/elasticsearch/ – sollen hier Änderungen vorgenommen werden, sollte die entsprechende Dokumentation zurate gezogen werden.

Chronologische Abfrage unter Elasticsearch

Elasticsearch ist eine quelloffene Suchmaschine. Über eine Query kann eine Suche spezifiziert werden, welche für die entsprechenden Ergebnisse sorgt. Manchmal soll allerdings die Ausgabe der Daten eines Index von Elasticsearch chronologisch erfolgen. Dies ist z.B. sinnvoll, wenn Logdaten oder ähnliches in diesem gespeichert werden. In einem solchen Fall sollen sie unter Umständen chronologisch ähnlich dem Aufruf tail -f angezeigt werden. Dazu dient folgender Request:

GET https://elastic.example.org:9200/index/_search

Zusätzlich muss die eigentliche Query im Body der Anfrage, als JSON hinterlegt werden:

{
  "query": {
    "match_all": {}
  },
  "size": 10,
  "sort": [
    {
      "timestamp": {
        "order": "desc"
      }
    }
  ]
}

Das hier für die Sortierung genutzte Feld timestamp muss in den Daten enthalten sein, sonst funktioniert die Sortierung nicht. Nach dem Absetzen der Query, erhält der Nutzer zehn Einträge, beginnend mit den neusten Einträgen.

fyyd – die Podcast-Suchmaschine

Wer nicht genug von Podcasts bekommen kann, der steht irgendwann vor der Frage wo er noch mehr Podcast beziehen kann. Eine gute Anlaufstelle dafür ist die deutschsprachige Podcast-Suchmaschine fyyd. Bei dem Projekt handelt es sich um eine One-Man-Show von Christian Bednarek. Er betreibt die Suchmaschine bereits seit einigen Jahren. Mittlerweile befinden sich über 11000 Podcasts in der Datenbank von fyyd, so das man eine große Auswahl an unterschiedlichsten Audioformaten vorfindet.

fyyd.de

fyyd verfügt über eine API, so das man die Podcast-Suche auch in Drittapplikationen einbinden kann. Informationen rund um fyyd sind auf dem fyyd-Blog zu finden, welcher in unregelmäßigen Abständen aktualisiert wird.

Paketsuche für Homebrew

Bei Homebrew handelt es sich ähnlich wie MacPorts um einen Paketmanager für Mac OS X. Leider gibt es auf der offiziellen Homebrew Seite keine Möglichkeit nach bestimmten Paketen zu suchen.

braumeister.org

braumeister.org

Diese Lücke füllt die Seite braumeister.org. Die Seite bietet eine Suchmaschine über die gesamte Paketbasis an. Dabei ist die Seite und die Technik dahinter freie Software, deren Quelltext in einem Repository auf GitHub zu finden ist. Lizenziert ist das ganze dabei unter einer BSD-Lizenz.