Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Distributed systems runtime daemon written in Rust.

License

NotificationsYou must be signed in to change notification settings

aurae-runtime/aurae

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Workflow in progress: deployWorkflow in progress: documentationWorkflow in progress: build

Mission

Aurae is on a mission to be the most loved and effective way of managingworkloads on a node. Our hope is that by bringing a better set of controls to anode, we can unlock brilliant higher order distributed systems in the future.

Introduction

Aurae deploys a memory-safe1 runtime daemon, process manager,and PID-1 initialization system to remotely schedule processes, containers, andvirtual machines as well as set node configurations (e.g., like networkingstorage).

Through system proportioning and enterprise workload isolation techniques, theAuraeopen-source project can complement higher order schedulers and controlplanes (such as Kubernetes) as Aurae supports the usage of multi-tenantworkloads and enterprise identities all the way down to the socket layer.

Aurae is a proud member of theNivenly foundation.

FOSDEM 2023 Presentation

Project Status

STILL IN EARLY DEVELOPMENT!
The Aurae project and API can change without notice.
Do not run the project in production until further notice!

  • The Aurae project welcomes contributions of all kinds and sizes.
  • Please read the "getting involved" documentation before contributing to theproject.
  • You do not have to knowRust to join the project.

By joining the project in its early stages, you will help to create a milestonecontender for corporate distributed systems and automation that will remainaccessible to anyone.

Expanded Overview

Byintroducing Aurae cells on top of aLinux kernel the control of eachinternal runtime process on a given node becomes possible. The auraed runtimemaintains ownership of every process by managing everything fromPID-1 tonested processes.

Maintainable and predefined.proto-files contribute to the core definition ofthe distributed systems runtime and the standard library. During the buildprocess, these.proto-files can allow for greater customization possibilities.TheTypeScript file format replaces static manifests (like theYAML fileformat) for direct interactions with a running system.


AuraedTo ensure memory safety, Aurae serves the generic system's runtime daemon ([auraed]).
AuraeScriptTheAuraeScript (a Turing-complete scripting language built on TypeScript) library automatically generates itself from the pre-defined.proto files defined in the Aurae standard library.
It also directly embedsDeno source code to provide an SDK and the functionality to attach remote clients for the direct remote communication with Aurae.
#!/usr/bin/env auraescriptletcells=newruntime.CellServiceClient();letallocated=awaitcells.allocate(<runtime.AllocateCellRequest>{cell:runtime.Cell.fromPartial({name:"my-cell",cpus:"2",}),});letstarted=awaitcells.start(<runtime.StartExecutableRequest>{executable:runtime.Executable.fromPartial({cellName:"my-cell",command:"sleep 4000",description:"Sleep for 4000 seconds",name:"sleep-4000",}),});
AuthenticationAurae extendsSPIFFE/SPIRE (x509 mTLS)-backed identity, authentication (authn), and authorization (authz) in a distributed system down to the Unix domain socket layer.
Principle of Least AwarenessA single Aurae instance has no awareness of higher order scheduling mechanisms such as the Kubernetes control plane.
Runtime WorkloadsThe Aurae runtime API can managevirtual machines,executables,cells,pods, and otherspawned Aurae instances.
The Aurae Standard LibraryThe Aurae project exposes its functionality as a gRPC API through theAurae standard library. TheV0 API reference contains the current library definition.

Footnotes

  1. The reliability and effectiveness of the Rust systems language make it an excellent choice for the development of the Aurae project.Learn more about Rust


[8]ページ先頭

©2009-2025 Movatter.jp