create secret…
kubectl get secret <nombre> -o yaml
y echo «….» | base64 –decode
kubectl config get-contexts
kubectl create secret generic mariadb --from-literal=password=00000000 kubectl describe pod ... kubectl delete secret mariadb kubectl delete pod ... kubectl describe pod ...
##El secreto: kubectl apply -f /vagrant/kubernetes-curso/deployment/helloworld-secrets.yml kubectl apply -f /vagrant/kubernetes-curso/deployment/helloworld-secrets-volumes.yml kubectl describe pod helloworld-deployment-... kubectl exec -ti helloworld-deployment-... -- /bin/bash #root@helloworld-deployment-78457f7dfc-zn2bf:/app# cat /etc/creds/password #root@helloworld-deployment-78457f7dfc-zn2bf:/app# cat /etc/creds/username
kubectl create configmap
kubectl create cm mariadb --from-literal=root_password=00000000 --from-literal=mysql_usuario=usuario --from-literal=mysql_password=00000000 --from-literal=basededatos=test kubectl get cm kubectl describe cm mariadb kubectl apply -f /vagrant/kubernetes-curso/mariadb-deployment-configmap.yaml kubectl get pod kubectl exec -it mariadb-deploy-cm-... -- mysql -u usuario -p # show databases;
kubectl create configmap nginx-config --from-file=/vagrant/kubernetes-curso/configmap/reverseproxy.conf kubectl get cm kubectl describe cm nginx-config kubectl get configmap nginx-config -o yaml kubectl apply -f /vagrant/kubernetes-curso/configmap/ # desplegamos los 2 ficheros .yml
kubectl apply -f /vagrant/kubernetes-curso/webtest-volum-emptydir.yml kubectl get pod kubectl describe pod webtest kubectl exec -ti webtest -c contenedor2 -- bash # touch /web2/contenedor2 kubectl exec -ti webtest -c contenedor1 -- ash # touch /web1/contenedor1
kubectl get nodes kubectl describe nodes worker1 |grep -i labels -A 10 kubectl label nodes worker1 env=bd # Etiquetamos nuestro nodo con la variable env con el valor bd kubectl describe nodes worker1 |grep -i labels -A 10 # Describimos el nodo para visualizar sus labels kubectl apply -f /vagrant/kubernetes-curso/mysql-affinity.yml kubectl exec -it mysql-... -- mysql -u root -p mysql> create database kubernetes; mysql> show databases; kubectl delete deployment mysql kubectl apply -f /vagrant/kubernetes-curso/mysql-affinity.yml kubectl exec -it mysql-... -- mysql -u root -p mysql> show databases; kubectl label node worker1 env- # elimina la etiqueta (el guión final)
sudo apt install nfs-kernel-server sudo mkdir /bd-nfs sudo mkdir /var/shared sudo chmod 777 /bd-nfs/ sudo chown nobody:nogroup /bd-nfs/ sudo vi /etc/exports # /bd-nfs *(rw,no_root_squash) # /var/shared 10.0.0.0/24(rw,sync,no_root_squash,no_all_squash) sudo systemctl restart nfs-kernel-server sudo systemctl status nfs-kernel-server sudo systemctl enable nfs-kernel-server
kubectl apply -f /vagrant/kubernetes-curso/nfs-pv-pvc.yaml kubectl get pv,pvc kubectl apply -f /vagrant/kubernetes-curso/mysql-storage-nfs.yml kubectl describe pod mysql-storage-nfs-... kubectl exec -ti mysql-storage-nfs-... -- bash # df -h
kubectl drain worker1 --delete-local-data --ignore-daemonsets
kubectl uncordon worker1
kubectl get pod -A -o wide
kubectl -n kube-system describe pod kube-flannel…
→ ConfigMap ← 1 pod en cada nodo (servicio global en Swarm)