s
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
qsss_1.png
|
||||
smartcontract_deploy.png
|
||||
zmachine_storage.png
|
||||
zero_vm_storage.png
|
||||
|
@@ -1,7 +1,7 @@
|
||||
|
||||
## Unbreakable Storage
|
||||
|
||||

|
||||

|
||||
|
||||
- unlimited history
|
||||
- survives network, datacenter or node breakdown
|
||||
|
@@ -1,26 +0,0 @@
|
||||
|
||||
## Zero-Chance = Deterministic Deployment
|
||||
|
||||

|
||||
|
||||
The Dedupe filesystem flist uses an interface which allows you to create the file system interface in user space, it is a virtual filesystem.
|
||||
|
||||
Metadata is exposed. The system sees the full tree of the image, but data itself is not there, data is downloaded whenever they are accessed and fully deduped (unique data).
|
||||
|
||||
>TODO: improve
|
||||
|
||||
### Benefits
|
||||
|
||||
- Smart contract for IT
|
||||
The smart contract for IT concept is applicable to any workload: containers, VMs, all gateways primitives, volumes, kubernetes and network.
|
||||
It is a static agreement between farmer and user about deployment of an IT workload
|
||||
- no dynamic behavior for deployment at runtime
|
||||
- no process can start unless the files are 100% described on flist level
|
||||
|
||||
### There are multiple ways to create an flist:
|
||||
|
||||
- Convert an existing docker image which is hosted on the docker hub
|
||||
- Push an archive like a tgz on the hub
|
||||
- A library and CLI tool exist to build the flist from scratch: doing it this way, the directory is locally populated, and the flist is then created from the CLI tool
|
||||
- A [GitHub action](https://github.com/threefoldtech/publish-flist) allows to build a flist directly from GitHub action, useful for developers on GitHub
|
||||
|
36
collections/tech/zos/benefits/zero_deploy.md
Normal file
36
collections/tech/zos/benefits/zero_deploy.md
Normal file
@@ -0,0 +1,36 @@
|
||||
|
||||
|
||||
|
||||
## Deterministic Deployment
|
||||
|
||||
|
||||
The concept of Zero-Deploy is a key component of the **Smart Contract for IT** framework, which can be applied to any type of workload—whether it's containers, virtual machines (VMs), network gateways, volumes, Kubernetes resources, or other network elements. This framework serves as a formal agreement between a farmer (provider) and a user regarding the deployment of an IT workload.
|
||||
|
||||
### Process
|
||||
|
||||
1. **Build Your Code**
|
||||
Develop and prepare your application code.
|
||||
|
||||
2. **Convert to Zero-Image**
|
||||
Use a CI/CD solution (e.g., Hero CI/CD) to convert your Docker build (or other format) into a Zero-Image format.
|
||||
|
||||
3. **Define the Workload**
|
||||
Specify all the details of your workload, including network bridges, web gateways, required machines, and more.
|
||||
|
||||
4. **Register and Sign**
|
||||
Register the workload and sign it with your private key.
|
||||
|
||||
5. **Automatic Detection**
|
||||
All necessary Zero-OS nodes (our infrastructure) will detect that a new workload needs to be deployed.
|
||||
|
||||
6. **Deployment Process**
|
||||
The nodes will pull down the formal workload descriptions and initiate the deployment process.
|
||||
|
||||
7. **Validation**
|
||||
Every step of the deployment is verified by Zero-OS (ZOS) to ensure that the intended result is accurately replicated. If any discrepancies are detected, ZOS will halt the deployment and provide an error message.
|
||||
|
||||
### Benefits
|
||||
|
||||
- **Deterministic Deployment**: There is no dynamic behavior during deployment at runtime, ensuring a consistent and predictable outcome.
|
||||
- **Strict Compliance**: No process can start unless all files and configurations are fully described at the flist level.
|
||||
|
@@ -4,22 +4,28 @@
|
||||
|
||||
The Zero-OS is delivered to the 3Nodes over the internet network (network boot) and does not need to be installed.
|
||||
|
||||
|
||||
### 3Node Install
|
||||
|
||||
1. Acquire a computer (server)
|
||||
1. Deploy a computer
|
||||
2. Configure a farm on the TFGrid explorer
|
||||
3. Download the bootloader and put on a USB stick or configure a network boot device
|
||||
4. Power on the computer and connect to the internet
|
||||
5. Boot! The computer will automatically download the components of the operating system (Zero-OS)
|
||||
|
||||
The actual bootloader is very small, it brings up the network interface of your computer and queries TFGeid for the remainder of the boot files needed.
|
||||
The actual bootloader is very small, it brings up the network interface of your computer and queries TFGrid for the remainder of the boot files needed.
|
||||
|
||||
The operating system is not installed on any local storage medium (hard disk, ssd), Zero-OS is stateless.
|
||||
|
||||
The mechanism to allow this to work in a safe and efficient manner is an innovation called our container virtual filesystem.
|
||||
|
||||
|
||||
This is explained in more detail [in our SDK manual](https://library.threefold.me/info/manual/#/booting_node).
|
||||
|
||||
### Process
|
||||
|
||||
|
||||
- optionally: configure booting from secure BIOS
|
||||
- optionally: install signing certificate in the BIOS, to make sure that only the right bootloader can be started
|
||||
- the bootloader (ISO, PXE, USB, ...) get's downloaded from Internet (TFGrid CDN or private deployment)
|
||||
- core-0 (the first boot process) starts, self verification happens
|
||||
- the metadata for the the required software modules is downloaded and checked against signature and hashes
|
||||
- the core-0 zero_image service
|
||||
|
@@ -1,10 +0,0 @@
|
||||
|
||||
## Flist Hub
|
||||
|
||||
We provide a public hub you could use to upload your own Flist or filesystem directly and take advantages of Flist out-of-box on Zero-OS.
|
||||
You can convert an existing docker image the same way.
|
||||
|
||||
Example TFGrid Public hub: [hub.grid.tf](https://hub.grid.tf)
|
||||
|
||||
|
||||
|
28
collections/tech/zos/zero_hub.md
Normal file
28
collections/tech/zos/zero_hub.md
Normal file
@@ -0,0 +1,28 @@
|
||||
|
||||
# Zero Hub
|
||||
|
||||
> TODO: screenshots
|
||||
|
||||
A server which can manage your [Zero-Images](zero_image.md) and make it available to all Zero-OS'es
|
||||
|
||||
Features
|
||||
|
||||
- docker to zero_image converter
|
||||
- each user has its own account to manage their [Zero-Images](zero_image.md)
|
||||
- explorer for zero-images, see the content of what is inside
|
||||
- upload/download images which get converted to zero-image format, image can be e.g. export of a docker
|
||||
- replication between zero-hubs (as commandline in scripts)
|
||||
|
||||
## Private Zero Hub
|
||||
|
||||
You can deploy your private Zero-Hub and use [Mycelium Whitelist](mycelium_whiltelist.md)
|
||||
|
||||
## Public Zero Hub
|
||||
|
||||
We provide a public hub you could use to upload your own Flist or filesystem directly and take advantages of Flist out-of-box on Zero-OS.
|
||||
You can convert an existing docker image the same way.
|
||||
|
||||
Example TFGrid Public hub: [hub.grid.tf](https://hub.grid.tf)
|
||||
|
||||
|
||||
|
@@ -4,10 +4,10 @@
|
||||
|
||||
- [ZKube](zkube.md)
|
||||
- kubernetes deployment
|
||||
- [ZMachine](zmachine.md)
|
||||
- [Zero VM](zero_vm.md)
|
||||
- the container or virtual machine running inside ZOS
|
||||
- [CoreX](corex.md)
|
||||
- process manager (optional), can be used to get remote access to your zmachine
|
||||
- process manager (optional), can be used to get remote access to your zero_vm
|
||||
|
||||
A 3Node is a Zero-OS enabled computer which is hosted with any of the Cloud Providers.
|
||||
|
||||
|
Reference in New Issue
Block a user