Starting mywildcloud.org changes.
This commit is contained in:
34
content/get-started/poc/_index.md
Normal file
34
content/get-started/poc/_index.md
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: 🌩️ Get started
|
||||
date: 2025-08-06
|
||||
layout: single
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 1
|
||||
---
|
||||
|
||||
You've decided to see what is involved in this 🌩️ "Wild Cloud" thing. Welcome!
|
||||
|
||||
What follows is a step-by-step setup guide for early adopters. We'll do our best to keep these instructions in sync with the latest Wild Cloud software.
|
||||
|
||||
## 🚧 Under Construction 🚧
|
||||
|
||||
First of all, <span style="background-color: rgba(255, 255, 0, 0.4);">Wild Cloud is in active development</span> as are these pages. We prefer to develop things "in the open" since this is a community project. <u>Feel free to try things out now</u> (we have two pilot clouds running), but <span style="background-color: rgba(255, 255, 0, 0.4);">expect some bumps**</span> until we get everything sorted and remove this notice.
|
||||
|
||||
## Take your time!
|
||||
|
||||
One of our big objective with Wild Cloud is to make Internet technology more accessible to everyone. We want setting up and maintaining your wild cloud to be a fun learning experience, so you'll find that we interject {{< icon "circle-info" "#05df72" >}} definitions, and let you {{< icon "graduation-cap" "#5d0ec0" >}} go deeper with tips or entire articles, but we always bring things {{< icon "sun" "#fff085" >}} back around to your own wild cloud where you can try things out first-hand.
|
||||
|
||||
|
||||
All of the technology we use in Wild Cloud is open source and widely used, so investing time to really learn the concepts in this setup guide will be well spent.
|
||||
|
||||
## The path ahead
|
||||
|
||||
The following pages will guide you through buying your wild cloud hardware, setting up each of the various components, and, in the end, deploying applications and managing your wild cloud.
|
||||
|
||||
|
||||
<div class="text-center pt-4">
|
||||
{{< button href="hardware" target="_self" >}}
|
||||
Let's begin!
|
||||
{{< /button >}}
|
||||
</div>
|
||||
35
content/get-started/poc/dns-server-setup/index.md
Normal file
35
content/get-started/poc/dns-server-setup/index.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: Set up your DNS server
|
||||
date: 2025-08-04
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 5
|
||||
---
|
||||
|
||||
{{<go-deeper>}}
|
||||
This section is mandatory and, we admit, not accessible to non-technical audience. We have plans for this before releasing to early-adopters. These instructions are a placeholder suitable for Wild Cloud devs and will be replaced before the Early-Adopter release.
|
||||
{{</go-deeper>}}
|
||||
|
||||
## Get your hardware
|
||||
|
||||
Make sure you have a dedicated machine for your DNS server. It can be tiny, like an Orange Pi Zero.
|
||||
|
||||
## Install your OS
|
||||
|
||||
- Install another Debian-based Linux machine on your LAN (e.g. Debian or Ubuntu).
|
||||
- Make sure you can SSH in from your operator machine.
|
||||
- Record it's IP address.
|
||||
|
||||
## Install the DNS software
|
||||
|
||||
- Run `wild-dnsmasq-install` from your Wild Cloud Home on your operator machine.
|
||||
|
||||
## Update your LAN router
|
||||
|
||||
- Log in to your LAN router's web interface.
|
||||
- Find the DHCP settings and reserve the IP address you recorded for your DNS server.
|
||||
- Set the DNS server for your LAN to the IP address of your DNS server.
|
||||
|
||||
## Next Steps
|
||||
|
||||
Now that you have a DNS server set up, let's [set up your wild cloud](../setup-wild-cloud/).
|
||||
25
content/get-started/poc/get-a-domain-name/index.md
Normal file
25
content/get-started/poc/get-a-domain-name/index.md
Normal file
@@ -0,0 +1,25 @@
|
||||
---
|
||||
title: Get a Domain Name
|
||||
date: 2025-08-02
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 3
|
||||
---
|
||||
|
||||
## Get a Domain Name
|
||||
|
||||
You'll need to use CloudFlare.
|
||||
|
||||
Instructions...
|
||||
1. Go to [CloudFlare](https://www.cloudflare.com/) and create an account.
|
||||
2. If you don't already have a domain name, you can purchase one through CloudFlare.
|
||||
3. If you do have one, you can have CloudFlare manage your DNS records for you. (instructions)
|
||||
|
||||
## Set up your LAN router
|
||||
|
||||
- DynamicDNS
|
||||
|
||||
|
||||
## Next Steps
|
||||
|
||||
Now that you have a domain name, let's [set up your operator machine](../operator-setup/).
|
||||
75
content/get-started/poc/hardware/index.md
Normal file
75
content/get-started/poc/hardware/index.md
Normal file
@@ -0,0 +1,75 @@
|
||||
---
|
||||
title: Hardware
|
||||
date: 2025-08-01
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 2
|
||||
---
|
||||
|
||||
## Get your hardware
|
||||
|
||||
A basic wild cloud requires 8 computers, a network switch, a battery backup, and an Internet connection.
|
||||
|
||||
Six of the computers run Talos Linux and are your "cluster nodes". One computer will run your local network's name server so you can access internal cloud applications. The last computer is just used to manage your cluster. Most of these computers can be small or old machines, and they are all managed by Wild Cloud, so don't think it's too expensive or complicated to get started. A really useful wild cloud can be built for less than the price of a new smart phone.
|
||||
|
||||
{{<definition>}}
|
||||
In computing, the word "machine" goes back to Alan Turing’s 1936 concept of the ‘Turing machine,’ and to early electromechanical computers like ENIAC that were literally giant calculating machines. Today, in Kubernetes and cloud systems, like your wild cloud, we still use the word "machine" to mean any physical or virtual computer that runs workloads.
|
||||
{{</definition>}}
|
||||
|
||||
## Your "operator" machine
|
||||
|
||||
_You_ are the operator of your wild cloud, and you will need a computer to manage it. This can be any computer that you use regularly, such as a laptop or desktop. It does not need to be powerful. Wild Cloud management software is currently only tested on Ubuntu Linux, but it should work on any Linux or MacOS machine.
|
||||
|
||||
## LAN Router
|
||||
|
||||
Your LAN router is the central hub for your wild cloud network. It connects all of your machines to each other and to the Internet. We recommend the GL-iNet Flint 2 router. Why? [read more]
|
||||
|
||||
## DNS machine
|
||||
|
||||
You'll need a tiny computer to run your local DNS server. This can be a Raspberry Pi or any other small computer that can run Linux. It does not need to be powerful, as it will only handle a small amount of name lookups for internal use of your cloud. Here's a picture on an Orange Pi Zero running a wild cloud DNS server. It cost $40.
|
||||
|
||||

|
||||
|
||||
## Cluster control nodes (x3)
|
||||
|
||||
A wild cloud computer cluster requires three control nodes. These are the machines that run Talos Linux and Kubernetes software. These computers all talk to each other and manage the cluster on your behalf. They will schedule all of your applications and make sure they keep running properly. These computers don't need a lot of horsepower or memory or disk space as they are only doing one thing. Micro PCs make great control nodes because they are inexpensive, quiet, and use very little power.
|
||||
|
||||
Here is a picture of three BeeLink Mini S machines, each costing a little over $120.
|
||||
|
||||

|
||||
|
||||
And here is a picture of three old Shuttle PCs that I found in the trash at work. They're perfect.
|
||||
|
||||

|
||||
|
||||
## Worker nodes (xN)
|
||||
|
||||
Finally, you'll need at least three worker nodes, but you can add as many as you like. We need at least three so the data storage across the nodes can be reliable against any one node failing. A worker node is any computer that runs Talos Linux and Kubernetes software and your applications will be automatically run on them. You can start with smaller machines to handle many different kinds of applications, and you can attach larger, more powerful machines for more demanding applications later (like video processing or AI/machine learning).
|
||||
|
||||
This wild cloud has three worker nodes, one is a big desktop PC with a powerful GPU for AI processing, another is a micro PC I purchased for around $500, and the third I bought from a thrift store for $10.
|
||||
|
||||

|
||||
|
||||
## Network switch
|
||||
|
||||
A network switch is a device that connects all of the computers in your wild cloud together into a single network. You _could_ use a wireless network, but using a network switch to physically connect your machines together provides more reliability. A simple 8-port "unmanaged" switch is usually sufficient for a basic wild cloud setup, but you can get larger switches if you have more machines.
|
||||
|
||||
Here's a picture of a simple 8-port switch that costs around $20:
|
||||
|
||||

|
||||
|
||||
Here's a picture of a larger 16-port switch that costs around $120. This wild cloud is ready for 8 more machines:
|
||||
|
||||

|
||||
|
||||
## Battery Backup
|
||||
|
||||
A battery backup (UPS) is an important part of your wild cloud setup. It ensures that your cloud remains operational even during power outages. Look for a UPS that can provide enough power for all of your critical machines for at least a few minutes.
|
||||
|
||||
## USB thumb-drives
|
||||
|
||||
USB thumb-drives are useful for booting your wild cloud machines and for transferring files between them. Look for USB drives that are at least 32GB in size and have good read/write speeds. A set of three or four is recommended.
|
||||
|
||||
## Next Steps
|
||||
|
||||
Now that you have your hardware, let's make sure you've [acquired a domain name](../get-a-domain-name/) guide to get started.
|
||||
56
content/get-started/poc/operator-setup/index.md
Normal file
56
content/get-started/poc/operator-setup/index.md
Normal file
@@ -0,0 +1,56 @@
|
||||
---
|
||||
title: Operator machine
|
||||
date: 2025-08-03
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 4
|
||||
---
|
||||
|
||||
(This page assumes you already have your hardware ready to set up. If you don't, read [Setting Up Your Hardware](../hardware/)).
|
||||
|
||||
## Your operator machine
|
||||
|
||||
Your operator machine is the computer you manage your wild cloud with. Below, we will install the Wild Cloud software on your operator machine.
|
||||
|
||||
Your operator machine should be a [Linux](/learning/linux/) machine on your LAN. It's helpful if it has a nice big hard drive you can use for backing up your wild cloud data.
|
||||
|
||||
## Install the Wild Cloud software
|
||||
|
||||
{{< go-deeper >}}
|
||||
We recognize that this part of the guide requires more knowledge of `git` and `bash`. We plan to create a `wild` CLI and perhaps even a GUI setup before wider release. For now, we are prototyping our (fully functional) POC by using scripts from this Wild Cloud repo.
|
||||
{{< /go-deeper >}}
|
||||
|
||||
Download the Wild Cloud software using git:
|
||||
|
||||
```bash
|
||||
git clone https://git.civilsociety.dev/CSTF/wild-cloud.git
|
||||
```
|
||||
|
||||
Add the `bin` directory to your path.
|
||||
```bash
|
||||
export PATH=$PATH:~/wild-cloud/bin
|
||||
```
|
||||
|
||||
Install dependencies:
|
||||
|
||||
```bash
|
||||
scripts/setup-utils.sh
|
||||
```
|
||||
|
||||
## Create your Wild Cloud Home
|
||||
|
||||
Now that you have the Wild Cloud software installed, we are going to create a directory that will hold everything about your personal wild cloud. We call this your "Wild Cloud Home".
|
||||
|
||||
{{< definition >}}
|
||||
Your **Wild Cloud Home** is the directory where all of your wild cloud data will be stored. This includes your configuration files, data files, and any other files related to your wild cloud.
|
||||
{{< /definition >}}
|
||||
|
||||
You can put it in any directory. Here we show an example if you want to make a directory named `my-wild-cloud` in your home directory.
|
||||
|
||||
```bash
|
||||
mkdir -p ~/my-wild-cloud
|
||||
cd ~/my-wild-cloud
|
||||
wild-cloud-scaffold
|
||||
```
|
||||
|
||||
That's it! Your wild cloud operator machine is ready to go! Most of the rest of the instructions in this guide will assume you are working within this directory.
|
||||
115
content/get-started/poc/setup-wild-cloud/index.md
Normal file
115
content/get-started/poc/setup-wild-cloud/index.md
Normal file
@@ -0,0 +1,115 @@
|
||||
---
|
||||
title: Set up your wild cloud
|
||||
date: 2025-08-05
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 6
|
||||
---
|
||||
|
||||
This section of the guide will walk you through setting up your wild cloud cluster. When you are done, you will have a complete wild cloud, all set up, ready for your apps!
|
||||
|
||||
## Prepare your USB key(s)
|
||||
|
||||
### Download the correct Talos ISO
|
||||
|
||||
You will be using a USB key to boot each of your cluster machines. Let's create the bootable USB key now.
|
||||
|
||||
From your wild cloud home, run:
|
||||
|
||||
```bash
|
||||
# Upload schematic configuration to get schematic ID from the Talos ISO service.
|
||||
wild-talos-schema
|
||||
|
||||
# Download custom ISO with system extensions.
|
||||
wild-cluster-node-boot-assets-download
|
||||
```
|
||||
|
||||
This will download all the Talos ISOs for your wild cloud configuration.
|
||||
|
||||
The custom ISO includes system extensions needed for a wild cloud cluster and is saved to `.wildcloud/iso/talos-v<VERSION>-metal-amd64.iso`.
|
||||
|
||||
|
||||
### Copy ISO to a USB drive
|
||||
|
||||
```bash
|
||||
# Find your USB device (be careful to select the right device!)
|
||||
lsblk
|
||||
sudo dmesg | tail # Check for recently connected USB devices
|
||||
|
||||
# Create bootable USB (replace /dev/sdX with your USB device and set the version you donwloaded.
|
||||
sudo dd if=.wildcloud/iso/talos-v<VERSION>-metal-amd64.iso of=/dev/sdX bs=4M status=progress sync
|
||||
|
||||
# Verify the write completed
|
||||
sync
|
||||
```
|
||||
|
||||
**⚠️ Warning**: Double-check the device path (`/dev/sdX`). Writing to the wrong device will destroy data!
|
||||
|
||||
TO DO: Look into some utilities (Balena Etcher, Rufus, etc.) to make this simpler/safer.
|
||||
|
||||
|
||||
## How to install Talos OS on a machine
|
||||
|
||||
To add a machine to your Wild Cloud, you will need to install Talos OS on it. The first time the machine boots, it will be in "maintenance mode" which makes it available to be configured as part of your wild cloud.
|
||||
|
||||
To install Talos OS:
|
||||
|
||||
Prepare the machine:
|
||||
|
||||
- The machine should have a ~100GB drive that the Talos OS will be installed to. Talos will never use more space than this, so any larger of a drive will be wasted space.
|
||||
- If the machine is going to be a worker node, any number of additional drives can be inserted.
|
||||
- Connect the machine to your wild cloud network switch.
|
||||
|
||||
1. Insert your Talos USB key and boot the machine.
|
||||
2. Enter EUFI settings (usually F2, F12, DEL, or ESC during startup) and configure the machine to boot from whatever you are selecting as your boot drive.
|
||||
3. For this time only, choose to boot from the USB key.
|
||||
|
||||
That's all you need to do. The machine should boot into maintenance mode and you will see an IP address you will use during setup.
|
||||
|
||||
## Setup!
|
||||
|
||||
Ok, with the Talos USB key and knowing how to boot a machine with it, we're ready to set up our cluster. In your Wild Cloud Home, start the setup process by running...
|
||||
|
||||
```bash
|
||||
wild-setup
|
||||
```
|
||||
|
||||
The setup script will walk you through the process of installing your cluster nodes (part 1), and your cluster services (part 2).
|
||||
|
||||
### Part 1: Setup your cluster nodes
|
||||
|
||||
_To add a node, it is expected to be in "maintenance mode"--as described above_
|
||||
|
||||
Your cluster will be "brought up" after your first control node is added. Each additional control node will be added to the cluster until you have all three nodes running.
|
||||
|
||||
After your three control nodes are setup, you will have the opportunity to add as many worker nodes as you'd like (three minimum).
|
||||
|
||||
If you ever want to set up more cluster nodes, you don't need to run the full setup. To get back into this part of the setup, you can just run:
|
||||
|
||||
```bash
|
||||
wild-setup-cluster
|
||||
```
|
||||
|
||||
### Part 2: Install your cluster services
|
||||
|
||||
After your control and worker nodes are installed, `wild-setup` will automatically install all of your wild cloud's cluster services.
|
||||
|
||||
The first time through this part of the setup, you will be asked for your preferences as needed and they will be captured in your `config.yaml`. Once your preferences are recorded, the services will be automatically deployed to your cluster.
|
||||
|
||||
If you ever need to change your cluster services, you don't have to re-run the full setup. You can just run:
|
||||
|
||||
```bash
|
||||
wild-setup-services
|
||||
```
|
||||
|
||||
## Check your installation
|
||||
|
||||
When the setup is finished, you can test your installation with:
|
||||
|
||||
```bash
|
||||
wild-status
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
Now that you have your Wild Cloud set up, you can start using it! Follow the instructions in the [Using Wild Cloud](../using-wild-cloud/) guide to get started with deploying applications and managing your cloud environment.
|
||||
27
content/get-started/poc/using-wild-cloud/index.md
Normal file
27
content/get-started/poc/using-wild-cloud/index.md
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
title: Use your wild cloud
|
||||
date: 2025-08-06
|
||||
series:
|
||||
- Wild Cloud Setup
|
||||
series_order: 7
|
||||
---
|
||||
|
||||
## Installing Applications
|
||||
|
||||
`wild-app-fetch <app-name>`
|
||||
`wild-app-install <app-name>`
|
||||
|
||||
Configure
|
||||
|
||||
`wild-app-deploy <app-name>`
|
||||
|
||||
## Customizing your apps
|
||||
|
||||
|
||||
## Upgrade your apps
|
||||
|
||||
|
||||
## Making backups
|
||||
|
||||
|
||||
## Restoring backups
|
||||
Reference in New Issue
Block a user