探索 Kubernetes 面试题:深入解析容器编排、集群管理、Pod 调度、服务发现等核心概念。掌握常见问题与解答,提升面试成功率。涵盖部署策略、网络配置、存储管理、安全机制等关键知识点,适合开发者和运维人员。通过实际案例与最佳实践,帮助理解 Kubernetes 架构与操作,为技术面试做好充分准备。
题目列表(共192道):
- Kubernetes 是什么?
- Kubernetes 的主要特性有哪些?
- Kubernetes 的应用场景有哪些?
- Kubernetes 和 Docker 的关系是什么?
- Kubernetes 和 Docker Swarm 的区别是什么?
- Kubernetes 的优势是什么?
- Kubernetes 的劣势是什么?
- Kubernetes 的架构是怎样的?
- Kubernetes 集群中有哪些组件?
- Master 节点有哪些组件?
- Node 节点有哪些组件?
- etcd 的作用是什么?
- kube-apiserver 的作用是什么?
- kube-scheduler 的作用是什么?
- kube-controller-manager 的作用是什么?
- cloud-controller-manager 的作用是什么?
- kubelet 的作用是什么?
- kube-proxy 的作用是什么?
- Container Runtime 的作用是什么?
- Kubernetes 支持哪些 Container Runtime?
- Pod 是什么?
- Pod 的生命周期有哪些阶段?
- Pod 中如何定义容器?
- Pod 中如何定义 Init 容器?
- Pod 中如何使用多个容器?
- Pod 中容器间如何共享存储卷?
- Pod 中容器间如何进行通信?
- 如何创建 Pod?
- 如何查看 Pod 的状态?
- 如何删除 Pod?
- 如何更新 Pod?
- Pod 的重启策略有哪些?
- Pod 的健康检查是如何实现的?
- Pod 中如何配置 Liveness Probe?
- Pod 中如何配置 Readiness Probe?
- Pod 中如何配置 Startup Probe?
- Liveness Probe、Readiness Probe 和 Startup Probe 的区别是什么?
- Pod 中如何配置资源请求和限制?
- Pod 中如何使用 ConfigMap?
- Pod 中如何使用 Secret?
- Pod 中如何使用环境变量?
- Pod 的调度策略有哪些?
- Node Selector 的作用是什么?
- Node Affinity 的作用是什么?
- Pod Affinity 和 Anti-affinity 的作用是什么?
- Taint 和 Toleration 的作用是什么?
- 如何给节点打标签?
- 如何根据节点标签调度 Pod?
- DaemonSet 是什么?
- DaemonSet 的应用场景有哪些?
- 如何创建 DaemonSet?
- 如何更新 DaemonSet?
- ReplicaSet 是什么?
- ReplicaSet 的作用是什么?
- 如何创建 ReplicaSet?
- 如何更新 ReplicaSet?
- Deployment 是什么?
- Deployment 的作用是什么?
- Deployment 的滚动更新策略是什么?
- Deployment 的回滚是如何实现的?
- 如何创建 Deployment?
- 如何更新 Deployment?
- 如何回滚 Deployment?
- 如何暂停和恢复 Deployment?
- 如何查看 Deployment 的状态?
- StatefulSet 是什么?
- StatefulSet 的应用场景有哪些?
- StatefulSet 和 Deployment 的区别是什么?
- StatefulSet 的 Pod 名称是如何生成的?
- StatefulSet 的 Pod 启动顺序是如何保证的?
- StatefulSet 的更新策略有哪些?
- 如何创建 StatefulSet?
- 如何更新 StatefulSet?
- Job 是什么?
- Job 的应用场景有哪些?
- 如何创建 Job?
- 如何查看 Job 的状态?
- CronJob 是什么?
- CronJob 的应用场景有哪些?
- 如何创建 CronJob?
- 如何查看 CronJob 的状态?
- CronJob 的调度语法是什么?
- Service 是什么?
- Service 的作用是什么?
- Service 的类型有哪些?
- ClusterIP 类型 Service 的特点是什么?
- NodePort 类型 Service 的特点是什么?
- LoadBalancer 类型 Service 的特点是什么?
- ExternalName 类型 Service 的特点是什么?
- Headless Service 的特点是什么?
- 如何创建 Service?
- 如何访问 Service?
- Service 的 Endpoints 是什么?
- Ingress 是什么?
- Ingress 的作用是什么?
- Ingress Controller 的作用是什么?
- 如何创建 Ingress?
- 如何配置 Ingress 的 TLS/SSL 证书?
- Ingress 中如何使用 Ingress Controller?
- Kubernetes 中如何进行服务发现?
- Kubernetes 中如何进行负载均衡?
- Kubernetes 中的网络模型是什么?
- Kubernetes 支持哪些网络插件?
- Flannel 的作用是什么?
- Calico 的作用是什么?
- Weave Net 的作用是什么?
- Cilium 的作用是什么?
- Kube-proxy 的 iptables 模式是如何工作的?
- Kube-proxy 的 IPVS 模式是如何工作的?
- Network Policy 是什么?
- Network Policy 的作用是什么?
- 如何创建 Network Policy?
- Namespace 是什么?
- Namespace 的作用是什么?
- 如何创建 Namespace?
- 如何在指定的 Namespace 中创建资源?
- 如何切换当前 Namespace?
- Resource Quota 的作用是什么?
- 如何创建 Resource Quota?
- Limit Range 的作用是什么?
- 如何创建 Limit Range?
- Horizontal Pod Autoscaler (HPA) 的作用是什么?
- 如何创建 HPA?
- HPA 的扩缩容算法是什么?
- Vertical Pod Autoscaler (VPA) 的作用是什么?
- Kubernetes 的存储卷 (Volume) 是什么?
- Kubernetes 支持哪些存储卷类型?
- emptyDir 存储卷的特点是什么?
- hostPath 存储卷的特点是什么?
- PersistentVolume (PV) 是什么?
- PersistentVolumeClaim (PVC) 是什么?
- PV 和 PVC 的关系是什么?
- PV 的访问模式有哪些?
- PV 的回收策略有哪些?
- StorageClass 的作用是什么?
- 如何创建 StorageClass?
- 如何使用动态存储供应 (Dynamic Provisioning)?
- ConfigMap 的作用是什么?
- 如何创建 ConfigMap?
- 如何使用 ConfigMap 配置 Pod?
- Secret 的作用是什么?
- 如何创建 Secret?
- 如何使用 Secret 配置 Pod?
- Service Account 的作用是什么?
- 如何创建 Service Account?
- 如何使用 Service Account 认证 Pod?
- RBAC (Role-Based Access Control) 的作用是什么?
- Role 和 ClusterRole 的区别是什么?
- RoleBinding 和 ClusterRoleBinding 的区别是什么?
- 如何使用 RBAC 进行权限控制?
- Kubernetes 的安全最佳实践有哪些?
- 如何保证 Kubernetes 集群的安全?
- 如何保证 Pod 的安全?
- 如何进行 Kubernetes 的安全审计?
- kubectl 的作用是什么?
- 如何使用 kubectl 管理 Kubernetes 集群?
- 如何使用 kubectl 创建资源?
- 如何使用 kubectl 查看资源?
- 如何使用 kubectl 删除资源?
- 如何使用 kubectl 更新资源?
- 如何使用 kubectl 执行命令?
- 如何使用 kubectl 查看日志?
- 如何使用 kubectl 部署应用?
- 如何使用 kubectl 扩展应用?
- 如何使用 kubectl 回滚应用?
- 如何使用 kubectl 配置集群?
- 如何使用 YAML 文件定义 Kubernetes 资源?
- 如何使用 JSON 文件定义 Kubernetes 资源?
- Kustomize 的作用是什么?
- Helm 的作用是什么?
- Helm Chart 是什么?
- 如何使用 Helm 安装应用?
- 如何使用 Helm 升级应用?
- 如何使用 Helm 回滚应用?
- 如何创建 Helm Chart?
- Operator 的作用是什么?
- 如何使用 Operator 管理 Kubernetes 应用?
- Custom Resource Definition (CRD) 的作用是什么?
- 如何创建 CRD?
- 如何使用 CRD 扩展 Kubernetes API?
- 如何监控 Kubernetes 集群?
- 如何使用 Prometheus 监控 Kubernetes?
- 如何使用 Grafana 可视化 Kubernetes 指标?
- 如何使用 Kubernetes Dashboard?
- Kubernetes 的日志是如何管理的?
- 如何使用 EFK (Elasticsearch, Fluentd, Kibana) 堆栈进行日志管理?
- 如何排查 Kubernetes 集群中的问题?
- 如何调试 Kubernetes 应用?
- 如何升级 Kubernetes 集群?
- 如何备份和恢复 Kubernetes 集群?
- 你在使用 Kubernetes 的过程中遇到过哪些挑战?
- 请描述一个你使用 Kubernetes 的项目,以及你在其中负责的部分。