Minikube 运行k8s job 及 service Windows环境下Minikube使用指南1. 环境准备minikube2. 启动Minikube3. 使用Job方式运行BusyBox3.1 创建Job配置文件创建名为busybox-job.yaml的文件apiVersion:batch/v1kind:Jobmetadata:name:busybox-joblabels:app:busyboxspec:template:metadata:labels:app:busyboxspec:containers:-name:busyboximage:busyboxcommand:[sh,-c,echo Hello from BusyBox Job!; date; echo Job completed successfully]restartPolicy:NeverbackoffLimit:43.2 部署Job# 创建Jobkubectl apply-f busybox-job.yaml# 查看Job状态kubectl get jobs kubectl get pods-l appbusybox# 查看Job日志kubectl logs-l appbusybox3.3 验证Job执行# 检查Job是否成功完成kubectl describe job busybox-job# 查看Pod状态应该显示Completedkubectl get pods-l appbusybox4. 使用Service方式运行Nginx4.1 创建Deployment和Service创建名为nginx-deployment.yaml的文件apiVersion:apps/v1kind:Deploymentmetadata:name:nginx-deploymentlabels:app:nginxspec:replicas:2selector:matchLabels:app:nginxtemplate:metadata:labels:app:nginxspec:containers:-name:nginximage:nginxports:-containerPort:80resources:limits:memory:128Micpu:500m---apiVersion:v1kind:Servicemetadata:name:nginx-servicelabels:app:nginxspec:selector:app:nginxports:-protocol:TCPport:80targetPort:80nodePort:30080type:NodePort4.2 部署Nginx应用# 创建Deployment和Servicekubectl apply-f nginx-deployment.yaml# 查看Deployment状态kubectl get deployments kubectl get pods-l appnginx# 查看Service信息kubectl get services kubectl describe service nginx-service4.3 访问Nginx服务# 获取Minikube IP$minikubeIP minikube ipWrite-HostMinikube IP:$minikubeIP# 测试访问NginxInvoke-WebRequesthttp://$minikubeIP:300805. 验证和监控5.1 查看所有资源# 查看所有Podskubectl get pods--all-namespaces# 查看所有Serviceskubectl get services--all-namespaces# 查看所有Deploymentskubectl get deployments--all-namespaces5.2 实时监控# 监控Pod状态变化kubectl get pods-w# 查看节点资源使用kubectl top nodes kubectl top pods6. 故障排除6.1 常见问题解决# 重启Minikubeminikube delete minikubestart--driverdocker# 查看Minikube日志minikube logs# 检查Docker状态docker info6.2 资源清理# 删除Jobkubectl delete job busybox-job# 删除Deployment和Servicekubectl delete deployment nginx-deployment kubectl delete service nginx-service# 停止Minikubeminikube stop# 删除Minikube集群minikube delete7. 最佳实践7.1 配置建议为Job设置合理的backoffLimit为Deployment设置适当的副本数合理配置资源限制使用标签(label)进行资源组织7.2 安全注意事项避免在生产环境中使用NodePort类型Service为容器设置资源限制防止资源耗尽定期更新镜像版本8. 扩展学习8.1 相关命令# 查看Minikube支持的驱动minikube drivers# 查看可用的Kubernetes版本minikube get-k8s-versions# 启动Dashboardminikube dashboard8.2 进阶配置配置Ingress控制器设置持久化存储配置ConfigMap和Secret实现自动伸缩