集群安装
kubectl run frontend --image=nginx
kubectl expose pod frontend --port 80
kubectl -n kubernetes-dashboard create rolebinding insecure --serviceaccount kubernetes-dashboard:kubernetes-dashboard --clusterrole view
kubectl run pod1 --image=nginx
kubectl run pod2 --image=httpd
kubectl expose pod pod1 --port 80 --name service1
kubectl expose pod pod2 --port 80 --name service2
curl https://192.168.211.40:32300/service1 -kv
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
kubectl create secret tls secure-ingress --cert=cert.pem --key=key.pem
curl https://secure-ingress.com:32300/service2 -kv --resolve secure-ingress.com:32300:192.168.211.41
kubectl label pod nginx role=metadata-accessor
docker run --pid=host -v /etc:/etc:ro -v /var:/var:ro -t aquasec/kube-bench:latest master --version 1.20
sha512sum kubernetes-server-linux-arm64.tar.gz
tar zxf kubernetes-server-linux-arm64.tar.gz
ls kubernetes/server/bin/kube-apiserver
sha512sum kubernetes/server/bin/kube-apiserver
docker ps | grep apiserver
docker cp 0fb5321dfd57:/ container-fs
ls container-fs/
find container-fs/ | grep kube-apiserver
sha512sum container-fs/usr/local/bin/kube-apiserver
集群强化
curl https://localhost:6443
curl https://localhost:6443 -k
vim /etc/kubernetes/manifests/kube-apiserver.yaml
curl https://192.168.211.40:6443 --cacert ca --cert ca.crt --key ca.key
kubectl edit svc
curl https://192.168.211.40:30300 -l
kubectl config view --raw > config
kubectl --kubeconfig config get ns
kubectl label node master cks/test=yes
kubectl create sa accessor
kubectl get sa,secrets
kubectl describe secret accessor-token-bnd4s
kubectl run accessor --image=nginx --dry-run=client -oyaml
kubectl exec -ti accessor -- bash
mount | grep sec
cd /run/secrets/kubernetes.io/serviceaccount
cat token
curl https://kubernetes
curl https://kubernetes -k
curl https://kubernetes -k -H "Authorization: Bearer eyJ..."
kubectl replace --force -f accessor.yaml
kubectl auth can-i delete secrets --as system:serviceaccount:default:accessor
kubectl create clusterrolebinding accessor --clusterrole edit --serviceaccount default:accessor
kubectl auth can-i delete secrets --as system:serviceaccount:default:accessor
kubectl create ns red
kubectl create ns blue
kubectl -n red create role secret-manager --verb=get --resource secrets -oyaml --dry-run=client
kubectl -n red create rolebinding secret-manager --role secret-manager --user jane
kubectl -n blue create role secret-manager --verb=get --verb=list --resource secrets
kubectl -n blue create rolebinding secret-manager --role secret-manager --user jane
kubectl -n red auth can-i get secrets --as jane
openssl genrsa -out jane.key 2048
jane.csr | -w 0
kubectl certificate approve jane
kubectl config view -o yaml > view.yaml
kubectl config set-credentials jane --client-key=jane.key --client-certificate=jane.crt
kubectl config set-credentials jane --client-key=jane.key --client-certificate=jane.crt --embed-certs
kubectl config view --raw
kubectl config set-context jane --user=jane --cluster=kubernetes
kubectl config get-contexts
kubectl drain master --ignore-daemonsets
apt-cache show kubeadm | grep -e
apt-get install kubeadm=1.20.2-00 kubectl=1.20.2-00 kubelet=1.20.2-00
kubeadm upgrade plan
kubeadm upgrade apply v1.20.6
kubectl uncordon master
kubectl get node