• 云计算_kind部署看K8s集群


    k8s集群搭建

    kind配置集群的位置 ~/.kind/
    文件名 kind-3nodes.yaml  单master集群
       kind: Cluster
       apiVersion: kind.x-k8s.io/v1alpha4
       nodes:
         - role: control-plane
         - role: worker
         - role: worker
    查看安装情况   
     kind create cluster --config=kind-3nodes.yaml
     kubectl get po -n kube-system
     kubectl get nodes
    

    k8s集群查看

     kubectl get cs 
     kubectl cluster-info
     kind load docker-image my-custom-image-0 my-custom-image-1 --name kind-2
     kubectl apply -f my-manifest-using-my-image:unique-tag
     docker exec -it kind-control-plane crictl images
    

    运行

    kubectl get cs
       Warning: v1 ComponentStatus is deprecated in v1.19+
       NAME                 STATUS      MESSAGE                                                                                       ERROR
       controller-manager   Unhealthy   Get "http://127.0.0.1:10252/healthz": dial tcp 127.0.0.1:10252: connect: connection refused
       scheduler            Unhealthy   Get "http://127.0.0.1:10251/healthz": dial tcp 127.0.0.1:10251: connect: connection refused
       etcd-0               Healthy     {"health":"true"}
    解决方式 改master节点配置文件
       docker exec -it kind-control-plane /bin/bash
         cd /etc/kubernetes/manifests
    	  cat kube-scheduler.yaml | grep -n port=0 
    	  sed  -i '19s/^/#/' kube-scheduler.yaml 
          sed -n '19p' kube-scheduler.yaml  	  
    	  systemctl restart  kubelet
          exit
    
    kubectl get cs
     Warning: v1 ComponentStatus is deprecated in v1.19+
     NAME                 STATUS    MESSAGE             ERROR
     scheduler            Healthy   ok
     controller-manager   Healthy   ok
     etcd-0               Healthy   {"health":"true"}
    

    使用helm

    Helm 是 Deis 开发的一个用于 Kubernetes 应用的包管理工具,
    主要用来管理 Charts。有点类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM。
     Helm Chart 是用来封装 Kubernetes 原生应用程序的一系列 YAML 文件
     Helm  Chart  Release  Repository
          Helm CLI 
    	  Tiller 是服务器端组件,在 Kubernetes 群集上运行,并管理 Kubernetes 应用程序的生命周期
    	  Repository 是 Chart 仓库
     下载好Chart包以及harbor镜像
       Helm官方开源的Chart
          https://github.com/helm/charts/tree/master/stable
    	  helm repo add stable https://charts.helm.sh/stable
    	  
       三方开源的Chart包
          helm repo add bitnami https://charts.bitnami.com/bitnami
          https://artifacthub.io/packages/helm/bitnami/spark 
      在线安装
        helm repo add bitnami https://charts.bitnami.com/bitnami
        helm install my-spark bitnami/spark --version 5.9.3  
      离线安装 
        Chart 目录结构
         examples/
           Chart.yaml          # Yaml文件,用于描述Chart的基本信息,包括名称版本等
           values.yaml         # Chart的默认配置文件
           requirements.yaml   # [可选] 用于存放当前Chart依赖的其它Chart的说明文件
           charts/             # [可选]: 该目录中放置当前Chart依赖的其它Chart
           templates/          # [可选]: 部署文件模版目录,模版使用的值来自values.yaml和由Tiller提供的值
           templates/NOTES.txt # [可选]: 放置Chart的使用指南
    
     $ helm repo add bitnami https://charts.bitnami.com/bitnami
     $ helm dependency update .
     $ helm install dolphinscheduler . --set image.tag=2.0.3
     $ helm install dolphinscheduler . -n test
    
     Helm的任务是在仓库(Repository)中查找需要的Chart,然后将Chart以Release的形式安装到K8S集群中
     $ helm repo add bitnami https://charts.bitnami.com/bitnami
     $ helm dependency update .
     $ helm install dolphinscheduler . --set image.tag=2.0.3
     (Helm 2 是一种 Client-Server 结构,客户端称为 Helm,服务器称为 Tiller)。Helm 3 只有客户端结构,客户端仍称为 Helm 移除 Tiller,客户端直接与 Kubernetes API 服务器交互
    

    附录

     Sed和AWK是*nix命令行里面文本处理的神器,
      它们都是面向行的即处理文本的方式都是一行接着一行的处理
      删除命令:d(delete)  新增数据:a (append)	  前面插入:i (insert)  字符串的替换:s
      新增 删除 和修改替换  查找;
      sed [-nefri] ‘command’ 输入文本
      awk  具有编程语言的特性 变量,和循环,分支等逻辑
      #查询包括关键字port=0所在所有行 
       sed -n '/port=0/p' kube-scheduler.yaml
      获取字符串所在的行数	  
      cat kube-scheduler.yaml | grep -n port=0	
      #显示第一行 
       sed -n '19p' kube-scheduler.yaml  
        #
        cat kube-scheduler.yaml | grep -n port=0 
      # kube-scheduler.yaml 文件的,19,行首添加注释符#
       sed  -i '19s/^/#/' kube-scheduler.yaml  
       将kube-scheduler.yaml  文件的,35行到77行,行首添加注释符#
        sed -i "35,77s/^/#/g" kube-scheduler.yaml  
      1."^"代表行首,"$"代表行尾   
        cat kube-scheduler.yaml | grep -n port=0 
        cat kube-controller-manager.yaml |grep -n port=0 | awk -F ':' '{print $1}'
        cat kube-controller-manager.yaml |grep -n port=0 
        sed  -i '27s/^/#/' kube-controller-manager.yaml
    	sed -n '27p' kube-controller-manager.yaml 
    

    参考

    k8s1.19.3 cs接口 报错 https://blog.csdn.net/weixin_42562106/article/details/109581023
     Helm 3.8.0 https://github.com/helm/helm/releases
  • 相关阅读:
    DB2 9 基础根基(730 测验)认证指南,第 2 部门: 安适性(1)
    DB2 9 根底(730 考验)认证指南,第 3 部门: 访问 DB2 数据(7)
    IT人 软件工程师的务实职业生涯规划
    《Delphi 算法与数据结构》学习与感悟[8]: 单向链表的添加、删除与遍历
    《Delphi 算法与数据结构》简介及下载
    《Delphi 算法与数据结构》学习与感悟[1]: 通过 "顺序查找" 与 "二分查找" 说明算法的重要性
    《Delphi 算法与数据结构》学习与感悟[2]: 数据对齐
    学习 TTreeView [14] StateIndex(状态图标)、OverlayIndex(叠加图标)
    《Delphi 算法与数据结构》学习与感悟[3]: 获取一个字节中非空位的个数
    《Delphi 算法与数据结构》学习与感悟[6]: 一个简单的"单向链表"
  • 原文地址:https://www.cnblogs.com/ytwang/p/15956445.html
Copyright © 2020-2023  润新知