Erforschen Sie die Dokumente »
Schnellstarthandbuch · Probieren Sie unsere Sandbox -Cloud · Schließen Sie sich unserer Zwietracht bei
Tau ist ein Framework zum Aufbau von geringen Wartungs- und hochskalierbaren Cloud -Computing -Plattformen, die Softwareentwickler lieben werden!
tau
ist ein einzelner Binärer ohne externe Abhängigkeiten außer Standard -Systembibliotheken. Darüber hinaus erfordert es eine minimale Konfiguration. Dies sind die Hauptschritte:
Tau einbauen
curl https://get.tau.link/tau | sh
Konfigurieren
tau config generate -n yourdomain.com -s compute --services all --ip your_public_ip --dv --swarm
Start
tau start -s compute
Eine vollständige Schritt-für-Schritt-Anleitung finden Sie unter Bereitstellung von Tau.
Das Aufbau tau
Sie selbst ist ein unkomplizierter go build
, da Sie GO installiert haben.
Die Kosten und die Zeit, die für den Aufbau von Software erforderlich sind, übernehmen sie von der Entwicklungsumgebung in die Produktion und skalieren sie dann effektiv, um die Nachfrage nach Endbenutzer zu decken.
Entwicklerfreundliche Plattformen wie die großen Cloud-Computing-Anbieter sind teuer, sperren Benutzer in der lokalen Entwicklung und E2E-Tests.
Dies ist wirklich ein zweiseitiges Problem. Sparen Sie Infrastrukturkosten oder senken Sie die Entwicklungszeit?
Wenn Sie in Ihre eigene Plattform investieren, ist es eine felsige Straße, die die Entwicklungsgeschwindigkeit behindert und im Allgemeinen mehr kostet. Wir alle wissen, dass das Kubernetes -Märchen nicht gut endet!
Wenn Sie in die Entwicklungsgeschwindigkeit investieren, sind Sie durch die Funktionen und Kosten Ihres Anbieters eingeschränkt.
Für uns bedeutet die Lösung dieses Problems:
tau
löst für den Aufbau und die Wartung einer Cloud -Computing -Plattform und bietet auch die Grundlagen für ein erstaunliches Entwicklererlebnis.
Einer der Gründe, warum tau
eine minimale Konfiguration erfordert, ist, dass es integriert wird, dass die automatische Entdeckung integriert ist. Genau wie ein selbstfahrendes Auto sammelt tau
Informationen über Sensoren und versucht, die besten Möglichkeiten zu finden, um erreichbar, verfügbar zu sein usw.
Es ist jedoch eine gewisse Konfiguration wie Bootstrap Peers erforderlich. Sofern Sie nicht eine einzelne Knotenwolke ausführen, muss jeder Knoten mindestens einen anderen Peer kennen.
Eine mit tau
gebaute Wolke ist sehr dynamisch. Auf niedriger Ebene kommunizieren Knoten Vermögenswerte, Routen und Dienste und tauschen auch Informationen über andere Kollegen aus. Angereichert durch verteilte Dienste wie seer
und gateway
kann die Cloud eingehende Anforderungen für eingehende Ausgleiche geladen, um eine optimale Leistung und Zuverlässigkeit zu gewährleisten.
Dieses Verhalten ist auch in Cloud -Ressourcen eingebaut. Beispielsweise stellt ein Protokoll, das wir als hoarder
bezeichnen, sicher, dass Objektspeicher und Datenbanken repliziert werden. Alles, was Sie tun müssen, ist es auf ein paar Knoten zu aktivieren.
In Ihrem traditionellen Setup ist die Plattform eine komplexe Reihe von Vorlagen, Pipelines und Integrationen, die letztendlich dazu beitragen, die Konfiguration in API -Aufrufe und -Codes in Vermögenswerte zu verwandeln. Aufgrund dieser Komplexität und der Tatsache, dass viele Komponenten in einer sehr komplexen Umgebung laufen müssen, ist es unmöglich, die „lokale == Produktion“ -Abgleis zu befriedigen.
Zugegeben, es gibt einige Lösungen, die sich entweder verspotten oder an Dev/Prod -Ressourcen verspotten und es den Entwicklern ermöglichen, lokal aufzubauen oder zu debuggen. Es ist jedoch immer noch ein Dienst von Drittanbietern, den Sie integrieren und verwalten müssen.
Um die Gleichung zu befriedigen, haben wir beschlossen, tau
zu bauen, damit sie jeden Aspekt der Cloud vereinfacht, Ports und/oder Sandboxen vereinfacht.
Traditionell haben Sie durch API -Aufrufe mit der Infrastruktur eine Verbindung hergestellt. Dies ist für jeden Cloud -Computing -Anbieter neben Orchestrierungslösungen wie Kubernetes der Fall.
Vor ein paar Jahren begann das Konzept der Gitops, Wellen zu machen, und das war ungefähr zu der Zeit, als wir mit dem Bau begannen, und wir beschlossen, den unnötigen Müll zwischen der Definition einer Cloud -Ressource zu senken, die in Git gespeichert werden sollte, und ihrer Instanziierung .
Infolgedessen hat tau
keine API -Aufrufe, um beispielsweise eine serverlose Funktion zu erstellen. Stattdessen nimmt es Git als einzige Möglichkeit ein, die Infrastruktur zu verändern.
Außerdem bedeutet Git, dass der Kern für tau
ist, dass Knoten in der Cloud standardmäßig ein bestimmtes Ziel oder einen Master auf einen bestimmten Zweig stimmen. Unter dem, was es ermöglicht, ist beispielsweise eine einfache Möglichkeit, Entwicklungsumgebungen einzurichten.
Ein spezifischer Anwendungsfall ist die lokale Entwicklung. In diesem Fall kann auch Dream-Cli-Knoten auf den aktuellen Zweig eingestellt werden.
Zusätzlich zu den Knoten in einer Filiale verwendet die Anwendungsregistrierung, die vom Protokoll "TNS" verwaltet wird, für Versionseinträge Litig-IDs, sodass Knoten die Vermögenswerte dienen können, um neue Versionen zu erkennen, oder einen Roll-Back für diese Angelegenheit.
Innen erstellt tau
mit LIBP2P ein Overlay-Peer-to-Peer-Netzwerk zwischen den Knoten und ermöglicht einige ziemlich coole Funktionen wie:
Sofern nicht absolut erforderlich ist, was äußerst selten ist, sollte sich keine gut gestaltete Software auf IP-Adressen und Ports verlassen. Aus diesem Grund wird jede tau
-Cloud mit einem FQDN (dh Enterprise.Starships.ws) identifiziert, sodass in einer Anwendung keine absolute Netzwerkreferenz verwendet wird. Unter der Motorhaube kümmert sich die Wolke transparent um die DNS -Auflösung und den HTTP -Lastausgleich und beseitigt die Notwendigkeit, diese einzurichten.
In jeder anderen Cloud Computing -Implementierung bedeutet Speicher einen Ort und im Allgemeinen einen Weg. Beispielsweise hat https://tau.how/assets/logo-w.svg
/assets/logo-w.svg
tau.how
relativ zum Ort. Diese adressierende Art und Weise, die als "standortbasierte Adressierung" bezeichnet wird, ist einfach nicht tragbar. Warum? Sie könnten fragen. Für den Anfang garantiert nichts, dass die zurückgegebenen Daten in diesem Fall ein SVG -Logo sind. Das andere Problem ist, tau.how
der Host, mit dem wir uns angeschlossen haben, es möglicherweise nicht haben.
Um dieses Problem zu lösen, verwendet tau
Content-Addressing, ein Konzept, das von Torrent Networks eingeführt und von IPFS populär gemacht wurde.
Wenn Sie also https://tau.how/assets/logo-w.svg
anfordern, die tatsächlich von einer tau
Cloud gehostet wird, wird der Host host=tau.how, path=/assets/logo-w.svg
der die Anfrage bearbeitet host=tau.how, path=/assets/logo-w.svg
) zu einer Inhaltsadresse oder einem CID, rufen Sie dann den Inhaltsleser ab und leiten Sie sie dann über einen HTTP -Schriftsteller weiter.
Ein paar coole Fakten zu diesem Ansatz:
Ab heute unterstützt tau
die WebAssembly für Computer. Der Grund, warum wir damit begonnen haben, ist, dass es sehr tragbar und sandkäfig ist. Wir unterstützen Container für CI/CD, aber noch nicht für das Computer. Wir arbeiten an einer Möglichkeit, Container und virtuelle Maschinen zu implementieren und gleichzeitig unsere Prinzipien der Portabilität und Sandboxen zu halten.
Code, binäre Bilder, Bilder sowie alle angehängten Vermögenswerte werden unter Verwendung der im Speicher beschriebenen Prinzipien gespeichert und abgerufen, wodurch die Bereitstellungszeit erheblich reduziert wird und die Berechnung von Daten (Datengravitation) und/oder Benutzer (Edge Computing) in die Nähe von Daten bringt.
Wenn Sie E2E-Tests für Projekte erstellen möchten, die auf tau
gehostet werden, können Sie dream
, ein Unterpaket innerhalb von tau
, verwenden. Wir haben noch keine Dokumentation dafür, aber Sie können schnell aus Tests wie Diensten/SEER/Tests/dns_test.go lernen.
Obwohl Sie tau
auf Ihrer lokalen Maschine praktisch nicht laufen können, können Sie dies mit Dream-Cli tun, was eine CLI-Wrapper um dream
ist. Es schafft lokale Cloud -Umgebungen, die Produktionseinstellungen widerspiegeln. Im Gegensatz zu tau
bietet es eine API für Echtzeitkonfiguration und -Tests.
tau
kann mit einem Plugin -System erweitert werden, das wir Orbit nennen. Ein Open-Source-Beispiel ist Ollama-Cloud, das zeigt, wie LLM-Funktionen zu Ihrer Cloud hinzugefügt werden.
Um mehr zu erfahren, überprüfen Sie:
Für umfassende Dokumentation besuchen Sie unsere Dokumentation.
Fragen oder Hilfe benötigen? Ping uns auf Zwietracht!