3

小型K8s:MicroK8s简介

 1 year ago
source link: https://www.jdon.com/66755.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

小型K8s:MicroK8s简介

MicroK8s 是一个完全兼容的 Kubernetes 发行版,具有比大多数其他发行版更小的 CPU 和内存占用空间。它是从头开始设计的,旨在为计算能力和内存有限的设备提供完整的 Kubernetes 体验。

MicroK8s 拥有许多功能:

  • 大小:它的内存和存储要求只是许多全尺寸 Kubernetes 集群所需的一小部分。事实上,它被设计为在单个节点/计算机上运行。
  • 简单性:通过安装最低限度的功能集,MicroK8s 使管理集群变得简单。只需一个命令,我们就可以在几分钟内创建一个功能齐全的 Kubernetes 集群。
  • 最新:MicroK8s 在同一天从核心 Kubernetes 项目中提取所有修复和更新,确保其集群几乎立即拥有最新的可用更改。

由于这些特性,在各种用例中,MicroK8s 是比标准 Kubernetes 部署更好的选择:

  • 开发人员工作站:可以自动配置新的开发人员工作站,并确保开发人员有一个合适的 Kubernetes 环境来进行测试。
  • CI/CD 服务器:使用可重复和固定的执行环境自动构建。
  • IoT 设备:具有远程连接的小型内存设备可以运行自己的 Kubernetes 集群。

安装
MicroK8s 附带适用于每个主要操作系统的安装程序:Windows、Linux 和 macOS。
默认情况下,MicroK8s 在安装期间禁用大部分功能。因此,我们必须使用microk8s enable命令启用我们想要的功能。

下面是我们可能希望启用以获取传统 Kubernetes 设置的常见附加组件列表:

  • cert-manager : 云原生证书管理
  • 仪表板:Kubernetes 仪表板
  • dns : CoreDNS 服务
  • ingress:用于外部访问服务的入口控制器
  • metallb:负载均衡器控制器
  • metrics-server:用于 API 访问服务指标的 Kubernetes 指标服务器
  • prometheus:用于监控和日志记录的 Prometheus 操作员
  • rbac:用于授权的基于角色的访问控制

使用microk8s status命令检查 Microk8s 集群的状态

可以停止和启动 MicroK8s 集群:

$ microk8s stop
Stopped.
$ microk8s start

当在笔记本电脑或其他没有专用电源的设备上运行时,MicroK8s 团队建议在不需要时关闭集群以节省电量。

部署应用
随着集群的启动和运行,我们现在可以使用几种不同的方式部署应用程序。
首先,我们可以使用传统的 YAML 文件来部署工作负载:

$ microk8s kubelet apply -f /path/to/deployment.yaml

此外,启用 Helm 功能后,我们可以使用 Helm 图表部署应用程序:

$ microk8s helm install elasticsearch elastic/elasticsearch

仪表板
要启用仪表板和入口附加组件,我们需要运行:

$ microk8s enable dashboard ingress

如果我们已经启用了仪表板附加组件,我们可以通过首先启动端口转发来查看它:

$ microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443

然后我们可以使用 URL https://localhost:10443查看仪表板。要登录,我们需要一个令牌或完整的kubeconfig:

# Generate a token
$ microk8s kubectl create token default

# Generate kubeconfig
$ microk8s config

请注意,集群使用自签名证书,这将导致 Web 浏览器警告。

可用性
MicroK8s 自称是生产级的,因此只要有多个节点可用,它也支持高可用性。从命令行添加节点很容易:

$ microk8s add-node

这提供了我们启动新节点并将它们加入集群所需的所有信息。

从我们希望加入此集群的节点,运行:

$ microk8s join 192.168.64.2:25000/16715886fa58dcf561acbd6df44c614d/14b471cb0bb3

默认情况下,新节点是工作节点并运行控制平面,尽管可以将新节点添加为工作节点。工作节点可以调度工作负载但不提供高可用性。至少需要三个节点来运行控制平面以实现高可用性。



About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK