首页主机资讯Kubernetes在Ubuntu上的插件怎么安装

Kubernetes在Ubuntu上的插件怎么安装

时间2025-11-17 14:04:04发布访客分类主机资讯浏览985
导读:在 Ubuntu 上安装 Kubernetes 插件的通用流程 前置条件 已部署好集群(建议使用 kubeadm 初始化控制平面),并且节点间网络互通。 已安装 kubectl 并配置好 admin 权限(如将 /etc/kuberne...

在 Ubuntu 上安装 Kubernetes 插件的通用流程

  • 前置条件
    • 已部署好集群(建议使用 kubeadm 初始化控制平面),并且节点间网络互通。
    • 已安装 kubectl 并配置好 admin 权限(如将 /etc/kubernetes/admin.conf 拷贝到 $HOME/.kube/config)。
    • 已关闭 Swap,并开启内核转发与桥接相关 sysctl 参数(如 net.bridge.bridge-nf-call-iptables=1net.ipv4.ip_forward=1)。
    • 注意:Kubernetes 的“插件”既包含集群网络插件(如 Calico/Flannel/Weave/Cilium),也包含运维类插件(如 Ingress Controller、Dashboard、Prometheus 等),安装方式以 kubectl apply -f < 清单或Helm Chart> 为主。

安装集群网络插件(必须先装,使 Pod 互通)

  • 选择并安装一种网络插件(仅装一种即可):
    • Flannel(简单、适合中小规模)
      • 初始化集群时建议指定 Pod CIDR:sudo kubeadm init --pod-network-cidr=10.244.0.0/16
      • 安装:kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    • Calico(功能完整、支持 NetworkPolicy,适合大规模)
      • 安装:kubectl apply -f https://docs.projectcalico.org/v3.27/manifests/calico.yaml
      • 如需自定义 Pod CIDR,先修改 custom-resources.yaml 中的 ipPools.cidr 后再 apply。
    • Weave Net(自动配置,支持加密)
      • 安装:kubectl apply -f https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d ‘\n’)
  • 验证
    • 查看系统命名空间 Pod:kubectl get pods -n kube-system(确保插件相关 Pod 均为 Running
    • 简单连通性测试:kubectl run nginx --image=nginx --restart=Neverkubectl exec -it nginx – wget -qO- http://google.com
  • 提示
    • 不同插件对 Pod CIDR 有要求,务必与初始化参数保持一致;生产环境建议启用 NetworkPolicy 提升安全性。

安装运维类插件(按需选择)

  • Ingress Controller(以 Nginx Ingress 为例)
    • 安装:kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml
    • 云厂商或裸机环境可按需部署对应的 provider 清单(如 cloud-generic)。
  • Dashboard(Web 管理界面)
    • 安装:kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
  • Helm(包管理,便于安装/升级复杂插件)
    • 安装客户端:下载并解压 helm-v3.x-linux-amd64.tar.gz,将 helm 移动到 /usr/local/bin
    • 使用:后续可通过 helm repo add/install 快速部署插件(如 Prometheus、Loki、Cert-Manager 等)。
  • 其他常见插件
    • 监控/日志类(如 Prometheus、EFK)可按官方或社区清单 kubectl apply -f 部署,建议结合 Helm 管理。

验证与常见问题处理

  • 基础验证
    • 节点状态:kubectl get nodes(应为 Ready
    • 系统 Pod:kubectl get pods -n kube-system(网络插件与核心组件 Running)
    • 网络连通:创建测试 Pod 并访问外网或集群内服务,确认跨节点与出入口流量正常。
  • 常见问题
    • 节点 NotReady:多因网络插件未就绪或 Pod CIDR 不匹配;核对初始化 –pod-network-cidr 与插件配置。
    • 镜像拉取失败:检查节点网络、镜像仓库可达性与镜像版本;必要时使用国内镜像源或私有仓库。
    • 端口/防火墙:确保 6443、10250、8472(Flannel VXLAN)、4789(Calico VXLAN) 等端口在节点间放通;云环境需配置安全组规则。
    • 内核/模块:部分插件(如 Cilium/BPF)需要启用 eBPF 等内核特性并安装相关工具。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Kubernetes在Ubuntu上的插件怎么安装
本文地址: https://pptw.com/jishu/748916.html
Ubuntu Kubernetes如何进行容器编排 Ubuntu Kubernetes的网络策略如何配置

游客 回复需填写必要信息