1、本机集群kind
原文:https://www.cnblogs.com/jayden-qiu/p/15706309.html
安装kubectl
安装kind(默认kubernetes版本为1.21.1)
go install sigs.k8s.io/kind@v0.11.1
保持docker在运行状态,创建集群
kind create cluster
保存 kubernetes config 下来
kind get kubeconfig > ~/kubeconfig.config
vscode 通过 kubernetes 插件可以连接到各个集群
命令行连接集群
// 设置集群地址文件 export KUBECONFIG=~/kubeconfig.config // 使用 kubectl cluster-info // 删除地址文件 unset KUBECONFIG
工作负载
Pod(逻辑上的物理主机)
一般一个Pod运行一个conatianer。一个Pod运行多个container的话是sidecar模式
新建a.yaml文件,拉取镜像运行
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 4
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
resources:
limits:
cpu: 100m
memory: 128Mi
运行
kubectl apply -f a.yaml
查看当前运行的pods
kubectl get pods
利用插件,登录到pod实例

命令行登录到pod
// 先获取pod实例名称 kubectl get pods // 登录进入 kubectl exec -it nginx-deployment-8f6948fdf-6zrfz -- sh // nginx-deployment-8f6948fdf-6zrfz 是 pod 名称
管理集群上的nginx服务
新建b.yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
执行
kubectl apply -f b.yaml
查看集群运行的服务
kubectl get svc
测试
// 登录远程 kubectl exec -it nginx-deployment-8f6948fdf-6zrfz -- sh // 测试 nginx-service 有没有启动 curl nginx-service
Deployment
删除集群上的 pods 及 deployment
kubectl delete deployment --all // 查看 kubectl get pods
集群物理层
节点
kubernetes master
control plane


浙公网安备 33010602011771号