首页 > 其他分享 >Kubernetes 新手实战指南 - 多节点集群部署

Kubernetes 新手实战指南 - 多节点集群部署

时间:2024-03-17 12:31:56浏览次数:19  
标签:Kubernetes apt nginx 集群 应用程序 新手 节点

简介

Kubernetes 是一个用于管理容器化应用程序的开源平台。它提供了一种声明式的方式来部署、管理和扩展应用程序,同时确保高可用性和可扩展性。在本文中,我们将逐步指导您设置一个 Kubernetes 多节点集群,即使您是 Kubernetes 的新手。

先决条件

  • 至少三台具有 root 权限的 Linux 服务器
  • 稳定且快速的互联网连接
  • kubectl 命令行工具

步骤 1:安装 Kubernetes

在每台服务器上,运行以下命令安装 Kubernetes:

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubeadm kubelet kubectl

步骤 2:初始化集群

在主节点上,运行以下命令初始化集群:

kubeadm init --pod-network-cidr=10.244.0.0/16

按照提示完成初始化过程。这将创建必要的 Kubernetes 组件,如 etcd、控制平面和工作节点。

步骤 3:加入工作节点

在工作节点上,运行以下命令加入集群:

kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash <hash>

您可以在主节点上运行以下命令获取令牌、端口和哈希:

kubeadm token list
kubeadm config images list

步骤 4:验证集群

在主节点上,运行以下命令验证集群是否正常工作:

kubectl get nodes

您应该看到所有节点都处于“Ready”状态。

步骤 5:部署应用程序

现在,我们可以部署一个简单的应用程序到集群中。创建一个名为“nginx”的部署文件:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80

使用以下命令创建部署:

kubectl create -f nginx.yaml

步骤 6:获取应用程序外部 IP

要从外部访问应用程序,我们需要获取其外部 IP 地址:

kubectl get svc nginx -o jsonpath='{.status.loadBalancer.ingress[0].ip}'

结论

恭喜!您已经成功设置了一个 Kubernetes 多节点集群并部署了一个应用程序。本指南提供了逐步说明,即使您是 Kubernetes 的新手,也可以轻松遵循。

附加资源

标签:Kubernetes,apt,nginx,集群,应用程序,新手,节点
From: https://blog.csdn.net/star19830909/article/details/136772403

相关文章

  • 代码随想录 第22天 | ● 235. 二叉搜索树的最近公共祖先 ● 701.二叉搜索树中的插入
    leetcode:701.二叉搜索树中的插入操作-力扣(LeetCode)classSolution{publicTreeNodeinsertIntoBST(TreeNoderoot,intval){//判断叶子结点,null说明到了,可以赋值。if(root==null){TreeNodenode=newTreeNode(val);return......
  • K8s 集群高可用 master 节点故障如何恢复? 原创
    K8s集群高可用master节点故障如何恢复?原创 山河已无恙 山河已无恙 2024-03-1702:01 内蒙古 听全文写在前面很常见的集群运维场景,整理分享博文内容为简单记录K8s集群高可用 master 节点故障恢复过程理解不足小伙伴帮忙指正不必太纠结于当下,也不必太忧......
  • kubernetes的kubectl命令介绍
    前言:kubectl是Kubernetes命令行工具,用于与Kubernetes集群进行交互。它允许用户执行各种操作,包括管理容器、部署应用程序、查看集群状态等。kubectl是操作k8s集群的命令行工具,安装在k8s的master节点,kubectl在$HOME/.kube目录中查找一个名为config的文件,你可以通过设置Kube......
  • kubernetes中的内存表示单位Mi和M的区别
    官网解释:Meaningofmemory,Mi表示(1Mi=1024x1024),M表示(1M=1000x1000)(其它单位类推,如Ki/KGi/G)创建两个pod,一个申请1Mi,另一个申请1MTRANSLATEwithxEnglishArabicHebrewPolishBulgarianHindiPortugueseCatalanHmongDawRomanianChines......
  • 通过 Metrics Server 查看 Kubernetes 资源指标
    1.简介MetricsServer是一个用于Kubernetes集群的监控工具,它用于收集、存储和提供关于集群中各种资源的度量数据。MetricsServer是Kubernetes中一个核心的指标收集器,可以提供关于CPU和内存使用情况、节点资源利用率以及其他重要指标的信息。它主要用于水平自动扩展(Horiz......
  • 节点异常检测-二维高斯分布
    所以一个样本是一个椭圆曲线吗?不完全是这样。在二维高斯分布的上下文中,单个样本是分布中的一个点,而不是一个椭圆曲线。椭圆曲线实际上表示的是等高线,也就是概率密度函数在不同值下的轮廓线。每条椭圆曲线上的点具有相同的概率密度,这些椭圆反映了数据的分布特性,如集中趋势和变异情......
  • C语言新手经典基础题——冒泡排序
    冒泡排序:用户输入一组数,编写程序将该组数据进行从小到大的顺序进行排列。举个例子:用户输入;1413918766这一组数据,现在要将这组数据进行从小到大的程序进行排列。我们编写程序的思路如下:现将第一个数和第二个数进行比较,即14和13,13比14小,那么就将13和14进行位置的调换,13......
  • vue 3+TS 封装自定义右键全局菜单(虚拟节点)
    有时我们需要点击(右键或左键)某个元素时弹出菜单,实现复制、粘贴、删除等功能。本文将介绍如何封装一个自定义的右键全局菜单(无三方依赖)。封装的菜单可自定义菜单项,图标,禁用,分割线,隐藏等。并且可以在全局任意地方使用。源码在文章末尾。效果使用<template><div>......
  • 掌握 Kubernetes 故障排除技巧:kubectl命令的基本指南
    Kubernetes彻底改变了容器编排,简化了应用程序的管理和扩展。然而,与任何复杂系统一样,Kubernetes集群也会遇到问题,需要及时解决才能保持最佳性能和可靠性。在本文中,我们将深入探讨必要的kubectl命令,这些命令是诊断和排除Kubernetes集群问题不可或缺的工具。无论您是新手还是经......
  • 初识kubernetes
    目录kubernetes简要概述1、kubernetes功能简介服务发现和负载均衡存储编排自动部署和回滚自动完成装箱计算自我修复2、Kubernetes架构及组件kube-apiserveretcdkube-schedulerkube-controller-managercloud-controller-managerNode组件:节点组件在每个节点上......