improved kubernetes example
This commit is contained in:
		
							parent
							
								
									9d4f2fbb12
								
							
						
					
					
						commit
						d0ed1c5526
					
				| @ -8,7 +8,44 @@ To create the VMs, run: | ||||
| ./create_vms.sh | ||||
| ``` | ||||
| 
 | ||||
| And to deploy: | ||||
| And to deploy Kubernetes: | ||||
| ``` | ||||
| ./deploy.sh | ||||
| ``` | ||||
| 
 | ||||
| After this, you can deploy an nginx service to all nodes: | ||||
| ``` | ||||
| ./nginx_service.sh | ||||
| ``` | ||||
| 
 | ||||
| ## Succesful output | ||||
| 
 | ||||
| Assuming everything went fine, at the end you should see something like this: | ||||
| ``` | ||||
| daemonset.apps/nginx-daemonset unchanged | ||||
| service/nginx-service unchanged | ||||
| 
 | ||||
| NGINX DEPLOYED! PLEASE FIND DETAILS OF PODS AND SERVICES BELOW: | ||||
| 
 | ||||
| NAME                        READY   STATUS    RESTARTS   AGE   IP          NODE         NOMINATED NODE   READINESS GATES | ||||
| pod/nginx-daemonset-dr84t   1/1     Running   0          3s    10.42.1.4   k3s-node-4   <none>           <none> | ||||
| pod/nginx-daemonset-lj4tp   1/1     Running   0          3s    10.42.3.5   k3s-node-2   <none>           <none> | ||||
| pod/nginx-daemonset-r4q5n   1/1     Running   0          3s    10.42.4.4   k3s-node-1   <none>           <none> | ||||
| pod/nginx-daemonset-t56dd   1/1     Running   0          3s    10.42.0.9   k3s-master   <none>           <none> | ||||
| pod/nginx-daemonset-z5tmn   0/1     Pending   0          3s    <none>      k3s-node-3   <none>           <none> | ||||
| 
 | ||||
| NAME                    TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE   SELECTOR | ||||
| service/kubernetes      ClusterIP   10.43.0.1       <none>        443/TCP        2m    <none> | ||||
| service/nginx-service   NodePort    10.43.108.125   <none>        80:30080/TCP   3s    app=nginx | ||||
| 
 | ||||
| TO CHECK IF NGINX IS WORKING, USE THE FOLLOWING COMMANDS: | ||||
|    curl http://149.36.48.101:30080 | ||||
|    curl http://149.36.48.104:30080 | ||||
|    curl http://149.36.48.105:30080 | ||||
|    curl http://149.36.48.102:30080 | ||||
|    curl http://149.36.48.103:30080 | ||||
| ``` | ||||
| 
 | ||||
| ## Tutorial | ||||
| 
 | ||||
| A more elaborate tutorial can be found [in the docs](http://docs.detee.ltd/tutorials/kubernetes). | ||||
|  | ||||
| @ -2,32 +2,32 @@ | ||||
| set -e | ||||
| mkdir -p tmp | ||||
| 
 | ||||
| detee-cli vm deploy --hostname k3s-master --vcpus 4 \ | ||||
|   --memory 4000 --disk 20 --location Random --public-ip | | ||||
| detee-cli vm deploy --hostname k3s-master --vcpus 2 \ | ||||
|   --memory 3000 --disk 20 --location Random --public-ip | | ||||
|   tail -1 > tmp/master_ssh_command && | ||||
|   echo "k3s-master successfully created" & | ||||
| sleep 1 | ||||
| 
 | ||||
| detee-cli vm deploy --hostname k3s-node-1 --vcpus 4 \ | ||||
|   --memory 4000 --disk 20 --location Random --public-ip | | ||||
| detee-cli vm deploy --hostname k3s-node-1 --vcpus 2 \ | ||||
|   --memory 3000 --disk 20 --location Random --public-ip | | ||||
|   tail -1 > tmp/node1_ssh_command && | ||||
|   echo "k3s-node-1 successfully created" & | ||||
| sleep 1 | ||||
| 
 | ||||
| detee-cli vm deploy --hostname k3s-node-2 --vcpus 4 \ | ||||
|   --memory 4000 --disk 20 --location Random --public-ip | | ||||
| detee-cli vm deploy --hostname k3s-node-2 --vcpus 2 \ | ||||
|   --memory 3000 --disk 20 --location Random --public-ip | | ||||
|   tail -1 > tmp/node2_ssh_command && | ||||
|   echo "k3s-node-2 successfully created" & | ||||
| sleep 1 | ||||
| 
 | ||||
| detee-cli vm deploy --hostname k3s-node-3 --vcpus 4 \ | ||||
|   --memory 4000 --disk 20 --location Random --public-ip | | ||||
| detee-cli vm deploy --hostname k3s-node-3 --vcpus 2 \ | ||||
|   --memory 3000 --disk 20 --location Random --public-ip | | ||||
|   tail -1 > tmp/node3_ssh_command && | ||||
|   echo "k3s-node-3 successfully created" & | ||||
| sleep 1 | ||||
| 
 | ||||
| detee-cli vm deploy --hostname k3s-node-4 --vcpus 4 \ | ||||
|   --memory 4000 --disk 20 --location Random --public-ip | | ||||
| detee-cli vm deploy --hostname k3s-node-4 --vcpus 2 \ | ||||
|   --memory 3000 --disk 20 --location Random --public-ip | | ||||
|   tail -1 > tmp/node4_ssh_command && | ||||
|   echo "k3s-node-4 successfully created" & | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										33
									
								
								kubernetes/k8s_nginx.yml
									
									
									
									
									
										Normal file
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										33
									
								
								kubernetes/k8s_nginx.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| apiVersion: apps/v1 | ||||
| kind: DaemonSet | ||||
| metadata: | ||||
|   name: nginx-daemonset | ||||
|   labels: | ||||
|     app: nginx | ||||
| spec: | ||||
|   selector: | ||||
|     matchLabels: | ||||
|       app: nginx | ||||
|   template: | ||||
|     metadata: | ||||
|       labels: | ||||
|         app: nginx | ||||
|     spec: | ||||
|       containers: | ||||
|         - name: nginx | ||||
|           image: nginx:latest | ||||
|           ports: | ||||
|             - containerPort: 80 | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: Service | ||||
| metadata: | ||||
|   name: nginx-service | ||||
| spec: | ||||
|   type: NodePort | ||||
|   selector: | ||||
|     app: nginx | ||||
|   ports: | ||||
|     - port: 80 | ||||
|       targetPort: 80 | ||||
|       nodePort: 30080 | ||||
							
								
								
									
										19
									
								
								kubernetes/nginx_service.sh
									
									
									
									
									
										Executable file
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										19
									
								
								kubernetes/nginx_service.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,19 @@ | ||||
| #!/bin/bash | ||||
| ssh_master=$(cat tmp/master_ssh_command) | ||||
| 
 | ||||
| set -e | ||||
| 
 | ||||
| cat k8s_nginx.yml | $ssh_master kubectl apply -f - | ||||
| 
 | ||||
| echo | ||||
| echo NGINX DEPLOYED! PLEASE FIND DETAILS OF PODS AND SERVICES BELOW: | ||||
| echo | ||||
| 
 | ||||
| $ssh_master kubectl get pods,svc -o wide | ||||
| 
 | ||||
| echo | ||||
| echo TO CHECK IF NGINX IS WORKING, USE THE FOLLOWING COMMANDS: | ||||
| grep -r ssh tmp/ | cut -d '@' -f2 | | ||||
|   xargs -i echo "   curl http://{}:30080" | ||||
| echo | ||||
| 
 | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user