development to main periodic update #77
| @@ -252,6 +252,7 @@ | |||||||
|       - [IPFS](system_administrators/advanced/ipfs/ipfs_toc.md) |       - [IPFS](system_administrators/advanced/ipfs/ipfs_toc.md) | ||||||
|         - [IPFS on a Full VM](system_administrators/advanced/ipfs/ipfs_fullvm.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)  |         - [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) |       - [AI & ML Workloads](system_administrators/advanced/ai_ml_workloads.md) | ||||||
|   - [ThreeFold Token](threefold_token/threefold_token.md) |   - [ThreeFold Token](threefold_token/threefold_token.md) | ||||||
|     - [TFT Bridges](threefold_token/tft_bridges/tft_bridges.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) | - [Prerequisites to Vote](#prerequisites-to-vote) | ||||||
| - [How to Vote for a Proposal](#how-to-vote-for-a-proposal) | - [How to Vote for a Proposal](#how-to-vote-for-a-proposal) | ||||||
| - [The Goal of the Threefold DAO](#the-goal-of-the-threefold-dao) | - [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. | 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! | 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](ipfs_toc.md) | ||||||
|   - [IPFS on a Full VM](ipfs_fullvm.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) | - [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) |   - [Redis](grid3_redis.md) | ||||||
|   - [IPFS](ipfs_toc.md) |   - [IPFS](ipfs_toc.md) | ||||||
|       - [IPFS on a Full VM](ipfs_fullvm.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) |   - [AI & ML Workloads](ai_ml_workloads.md) | ||||||
		Reference in New Issue
	
	Block a user