development to main periodic update #77
| @@ -252,6 +252,7 @@ | ||||
|       - [IPFS](system_administrators/advanced/ipfs/ipfs_toc.md) | ||||
|         - [IPFS on a Full VM](system_administrators/advanced/ipfs/ipfs_fullvm.md) | ||||
|         - [IPFS on a Micro VM](system_administrators/advanced/ipfs/ipfs_microvm.md)  | ||||
|         - [MinIO Operator with Helm3](system_administrators/advanced/minio_helm3.md) | ||||
|       - [AI & ML Workloads](system_administrators/advanced/ai_ml_workloads.md) | ||||
|   - [ThreeFold Token](threefold_token/threefold_token.md) | ||||
|     - [TFT Bridges](threefold_token/tft_bridges/tft_bridges.md) | ||||
|   | ||||
| @@ -8,6 +8,7 @@ The TFChain DAO (i.e. Decentralized Autonomous Organization) feature integrates | ||||
| - [Prerequisites to Vote](#prerequisites-to-vote) | ||||
| - [How to Vote for a Proposal](#how-to-vote-for-a-proposal) | ||||
| - [The Goal of the Threefold DAO](#the-goal-of-the-threefold-dao) | ||||
| - [Voting Weight](#voting-weight) | ||||
|  | ||||
| *** | ||||
|  | ||||
| @@ -39,3 +40,17 @@ To vote, you need to log into your Threefold Dashboard account, go to **TF DAO** | ||||
| The goal of DAO voting system is to gather the thoughts and will of the Threefold community and build projects that are aligned with the ethos of the project. | ||||
|  | ||||
| We encourage anyone to share their ideas. Who knows? Your sudden spark of genius might lead to an accepted proposal on the Threefold DAO! | ||||
|  | ||||
| ## Voting Weight | ||||
|  | ||||
| The DAO votes are weighted as follows: | ||||
|  | ||||
| - Get all linked farms to the account | ||||
| - Get all nodes per farm | ||||
| - Get compute and storage units per node (CU and SU) | ||||
| - Compute the weight of a farm: | ||||
|   ``` | ||||
|   2 * (sum of CU of all nodes) + (sum of SU of all nodes) | ||||
|   ``` | ||||
|  | ||||
| Voting weights are tracked per farm to keep it easy and traceable. Thus, if an account has multiple farms, the vote will be registered per farm. | ||||
| @@ -12,4 +12,5 @@ In this section, we delve into sophisticated topics and powerful functionalities | ||||
| - [IPFS](ipfs_toc.md) | ||||
|   - [IPFS on a Full VM](ipfs_fullvm.md) | ||||
|   - [IPFS on a Micro VM](ipfs_microvm.md) | ||||
| - [MinIO Operator with Helm3](minio_helm3.md) | ||||
| - [AI & ML Workloads](ai_ml_workloads.md) | ||||
							
								
								
									
										
											BIN
										
									
								
								collections/system_administrators/advanced/img/minio_1.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								collections/system_administrators/advanced/img/minio_1.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 247 KiB | 
							
								
								
									
										
											BIN
										
									
								
								collections/system_administrators/advanced/img/minio_2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								collections/system_administrators/advanced/img/minio_2.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 79 KiB | 
							
								
								
									
										112
									
								
								collections/system_administrators/advanced/minio_helm3.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								collections/system_administrators/advanced/minio_helm3.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,112 @@ | ||||
| <h1>MinIO Operator with Helm 3</h1> | ||||
|  | ||||
| <h2>Table of Contents</h2> | ||||
|  | ||||
| - [Introduction](#introduction) | ||||
| - [Prerequisites](#prerequisites) | ||||
| - [Create an SSH Tunnel](#create-an-ssh-tunnel) | ||||
| - [Set the VM](#set-the-vm) | ||||
| - [Set MinIO](#set-minio) | ||||
| - [Access the MinIO Operator](#access-the-minio-operator) | ||||
| - [Questions and Feedback](#questions-and-feedback) | ||||
|  | ||||
| *** | ||||
|  | ||||
| ## Introduction | ||||
|  | ||||
| We show how to deploy a Kubernetes cluster and set a [MinIO](https://min.io/) Operator with [Helm 3](https://helm.sh/). | ||||
|  | ||||
| MinIO is a high-performance, S3 compatible object store. It is built for | ||||
| large scale AI/ML, data lake and database workloads. Helm is a package manager for Kubernetes that allows developers and operators to more easily package, configure, and deploy applications and services onto Kubernetes clusters. | ||||
|  | ||||
| ## Prerequisites | ||||
|  | ||||
| - TFChain account with TFT | ||||
| - [Deploy Kubernetes cluster with one master and one worker (IPv4)](../../dashboard/solutions/k8s.md) | ||||
| - [Make sure you can connect via SSH on the terminal](../../system_administrators/getstarted/ssh_guide/ssh_openssh.md) | ||||
|    | ||||
| ## Create an SSH Tunnel | ||||
|  | ||||
| To access the MinIO Operator, we need to create an SSH tunnel with the port 9090. | ||||
|  | ||||
| - Open a terminal and create an SSH tunnel | ||||
|     ``` | ||||
|     ssh -4 -L 9090:127.0.0.1:9090 root@<VM_IP> | ||||
|     ``` | ||||
|  | ||||
| Simply leave this window open and follow the next steps. | ||||
|  | ||||
| ## Set the VM | ||||
|  | ||||
| We set the Master VM to access the minIO Operator. | ||||
|  | ||||
| - Install the prerequisites: | ||||
|     ``` | ||||
|     apt update | ||||
|     apt install git -y | ||||
|     apt install wget | ||||
|     apt install jq -y | ||||
|     ``` | ||||
| - Install Helm | ||||
|     ``` | ||||
|     wget https://get.helm.sh/helm-v3.14.3-linux-amd64.tar.gz | ||||
|     tar -xvf helm-v3.14.3-linux-amd64.tar.gz | ||||
|     mv linux-amd64/helm /usr/local/bin/helm | ||||
|     ``` | ||||
| - Install yq | ||||
|     ``` | ||||
|     wget https://github.com/mikefarah/yq/releases/download/v4.43.1/yq_linux_amd64.tar.gz | ||||
|     tar -xvf yq_linux_amd64.tar.gz | ||||
|     mv yq_linux_amd64 /usr/bin/yq | ||||
|     ``` | ||||
|  | ||||
| ## Set MinIO | ||||
|  | ||||
| We can then set the MinIO Operator. For this step, we mainly follow the MinIO documentation [here](https://min.io/docs/minio/kubernetes/upstream/operations/install-deploy-manage/deploy-operator-helm.html). | ||||
|  | ||||
| - Add the MinIO repo | ||||
|     ``` | ||||
|     helm repo add minio-operator https://operator.min.io | ||||
|     ``` | ||||
| - Validate the MinIO repo content | ||||
|     ``` | ||||
|     helm search repo minio-operator | ||||
|     ``` | ||||
| - Install the operator | ||||
|     ``` | ||||
|     helm install \ | ||||
|     --namespace minio-operator \ | ||||
|     --create-namespace \ | ||||
|     operator minio-operator/operator | ||||
|     ``` | ||||
| - Verify the operator installation | ||||
|     ``` | ||||
|     kubectl get all -n minio-operator | ||||
|     ``` | ||||
|  | ||||
| ## Access the MinIO Operator | ||||
|  | ||||
| You can then access the MinIO Operator on your local browser (port 9090) | ||||
|  | ||||
| ``` | ||||
| localhost:9090 | ||||
| ``` | ||||
|  | ||||
| To log in the MinIO Operator, you will need to enter the token. To see the token, run the following line: | ||||
|  | ||||
| ``` | ||||
| kubectl get secret/console-sa-secret -n minio-operator -o json | jq -r ".data.token" | base64 -d | ||||
| ``` | ||||
|  | ||||
| Enter the token on the login page: | ||||
|  | ||||
|  | ||||
|  | ||||
| You then have access to the MinIO Operator: | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| ## Questions and Feedback | ||||
|  | ||||
| If you have any questions, feel free to ask for help on the [ThreeFold Forum](https://forum.threefold.io/). | ||||
| @@ -81,5 +81,6 @@ For complementary information on ThreeFold grid and its cloud component, refer t | ||||
|   - [Redis](grid3_redis.md) | ||||
|   - [IPFS](ipfs_toc.md) | ||||
|       - [IPFS on a Full VM](ipfs_fullvm.md) | ||||
|       - [IPFS on a Micro VM](ipfs_microvm.md)  | ||||
|       - [IPFS on a Micro VM](ipfs_microvm.md) | ||||
|   - [MinIO Operator with Helm3](minio_helm3.md)  | ||||
|   - [AI & ML Workloads](ai_ml_workloads.md) | ||||
		Reference in New Issue
	
	Block a user