k4t系统架构 & 部署最佳实践

《kaiiit船长》 容器自动管理软件 (k4t,国产k8s)

k4t系统架构 & 部署最佳实践

文档修订时间: 2021-11-20

关键词 : k4t kaiiit 船长 captain powershell 最佳实践 容器 docker ps1倚天剑 国产k8s ps1绣花针

k4t系统架构

k4t系统架构 & 部署最佳实践

问:完美版的k4t项目,由哪几部分组件构成?

答:

1 master端。

2 node端。

3 动态负载均衡api网关。(外部 非必要组件)

4 动态dns。(外部)

5 监控端。

k4t部署相关问题之【master端】

概述:

k4t master相当于经理的手。干的是分配任务的活。采用懒惰的【触发执行】机制。

下列情况下,k4t master可以关机,不影响node运行。

  • 任务分配完毕,或调整完毕。
  • 没有启用,通过【k4t监控端】,进行【node自动伸缩】功能。
  • 没有执行,驱逐node任务(drain)。
  • 没有执行,删除node任务。

问:k4t master需要几台?

答:最多1台。或执行任务完毕后就关机的,半台master。

问:1台k4t master的话,如何保证元数据冗余?

答:依靠k4t node。k4t master软件内有,复制元数据到node的功能。只需要指定一个node ip地址即可。

可以灵活设定:可以设置1—n台node,每node可以设置1—n分钟,不同的备份时间。这样就可以有多个不同时段的,元数据历史副本。

实验环境-最简实践:不指定node,不备份元数据。

生产级别-最佳实践:设定1台node,设置每1—2分钟备份元数据。

k4t部署相关问题之【监控端】

概述:

【k4t 监控端】相当于经理(k4t master)的眼睛。

【k4t 监控端】由若干powershell脚本组成。

任务是检查k4t master内,k4t node内,磁盘空间,内存剩余,cpu剩余,和node是否存活等。

问:【k4t 监控端】需要几台?

答:1台。

【k4t 监控端】可以和【k4t master】分别安装在,2台虚拟机内。
建议把【k4t 监控端】和【k4t master】分离。把【k4t 监控端】装在你公司旧有的win,linux的zabbix监控机中。

【k4t 监控端】可以和【k4t master】安装在同一台虚拟机中。这样【k4t master】就丢失了【干完活关机】的功能。

实验环境-最简实践:【k4t 监控端】可以和【k4t master】安装在一台虚拟机中。
生产级别-最佳实践:【k4t 监控端】可以和【k4t master】安装在一台虚拟机中。。或分离。

k4t部署相关问题之【k4t网关】

概述:

【k4t网关】给k4t引入容器间的,东西向流量。负载平衡,限流等。
【k4t网关】可以支持任意第三方网关。本质上,2台虚拟机内的网关,可以不同厂家,不同版本。

问:【k4t网关】需要几台?

答:0—2台。

问:什么情况下,需要0台【k4t网关】?

答:下列极端情况下。

  • 整个集群内,都采用ipv6地址。
  • 整个集群内,都采外网ipv4地址。如 202.x.x.x
  • 使用云dnat网关,提供引入流量服务。

实验环境-最简实践:1台虚拟机中,安装【k4t 网关】,和【k4t dns】。
生产级别-最佳实践:2台虚拟机中,安装【k4t 网关】,和【k4t dns】。用于冗余高可用。采用相同厂家的网关软件,软件版本相同。

k4t部署相关问题之【k4t-dns】

概述:

【k4t-dns】帮k4t实现【服务发现】功能。
【k4t-dns】可以支持任意第三方dns。支持win server的dns server。
本质上,2台虚拟机内的dns,支持不同厂家,不同版本。

问:【k4t-dns】需要几台?

答:1—2台。至少有1台。

实验环境-最简实践:1台虚拟机中,安装【k4t 网关】,和【k4t dns】。
生产级别-最佳实践:2台虚拟机中,安装【k4t 网关】,和【k4t dns】。用于冗余高可用。采用相同厂家的网关软件,软件版本相同。

k4t部署相关问题之【双网关】,或【双dns】,之间数据同步问题。

概述:

采用【客户端分布式】技术。类似于etcd。原理就是分布式中的,基于redo-log,2步提交。

这样做的好处是,支持不同厂家,不同版本。不需要第三方网关软件带有双机高可用功能。不需要第三方dns软件带有双机高可用功能。

k4t部署相关问题之【结论】

实验环境-最简实践:总共2台虚拟机。

  • 1台虚拟机中,安装【k4t master】,和【k4t 监控端】。
  • 1台虚拟机中,安装【k4t网关】,和【k4t-dns】。

生产级别-最佳实践:总共3台虚拟机。

  • 在linux + zabbix中,安装powershell和【k4t 监控端】。
  • 1台虚拟机中,安装alpine-linux,挂载数据盘并安装【k4t master】。
    使用时,用alpine-linux的iso启动。执行完【k4t master】任务,就关机。
    需要再次执行【k4t master】任务时,由【k4t 监控端】,执行开机命令开机。
    alpine-linux开机时间10—15秒。这样节省云机子费用。
  • 2台虚拟机中,安装【k4t网关】,和【k4t-dns】。起冗余高可用功能。

生产级别-最佳实践,的最终结论:

2台虚拟机装(k4t 网关-dns),加1台虚拟机装k4t master。总共3台。即可实现生产级别的高可用部署。

k4t即:《kaiiit生产级别的容器编排系统》
https://gitee.com/chuanjiao10/k4t

项目目前状态:

未发布,诚征vc投资中。

筹到钱后,会在【k4t官方群:722528388】内,诚征内测用户。

谢谢观看。

Original: https://www.cnblogs.com/piapia/p/15568072.html
Author: PowerShell免费软件
Title: k4t系统架构 & 部署最佳实践

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609592/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • role: org.apache.maven.model.validation.ModelValidator【maven】项目创建后pom一直不能build出来还爆红【转】

    role: org.apache.maven.model.validation.ModelValidator【maven】项目创建后pom一直不能build出来还爆红 问题是因为m…

    Linux 2023年6月8日
    090
  • 剑指offer计划22( 位运算中等)—java

    1.1、题目1 剑指 Offer 56 – I. 数组中数字出现的次数 1.2、解法 救命,真不会用位运算,还是用哈希表做吧,位运算过段时间再学习~~~搞不来,虽然说哈…

    Linux 2023年6月11日
    082
  • Linux命令(实时更新)

    本博客主要总结一下博主工作中比较常用的命令: 1.iconv命令 对于给定文件把它的内容从一种编码转换成另一种编码。 -f encoding : 把字符从encoding编码开始转…

    Linux 2023年6月6日
    090
  • Redis缓存三大问题解析,看完保你面试能造火箭,工作能拧螺丝。

    前言 日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题。 面试10家公司,收获9个offer,2020年…

    Linux 2023年5月28日
    090
  • 【AutoSAR】 CP 和 AP

    概述 AutoSAR,全称为Automotive Open System Architecture(汽车开放系统架构)。是由全球各家汽车制造商、零部件供应商以及各种研究、服务机构共…

    Linux 2023年6月13日
    0131
  • Linux命令篇-sed 命令

    sed – stream editor for filtering and transforming text; sed:利用脚本来处理、编辑文本文件; &#x…

    Linux 2023年6月13日
    099
  • 小公司比较吃亏的两道微服务面试题

    其实选择工作的时候,很多技术牛人都会选择一些小而美的公司,技术全面,能够以一个更全面的视角看整个公司的运作,人和人之间的相处也很简单。但是,有两道微服务的面试题,小公司的朋友们会比…

    Linux 2023年6月14日
    0107
  • 《卡死你3000》批量文件复制命令详解

    卡死你3000简介: 名词解释: 批量顺序复制文件:从主控机,到从被控机1,被控机2,复制文件。有卡住问题。 批量并发复制文件:从主控机,到从被控机1,被控机2,复制文件。使用多线…

    Linux 2023年6月13日
    0120
  • archLinux 配置用户

    archlinux 启动之后只有默认的root用户,首先介绍下系统启动到登录需要的步骤 1.系统通过systemd 以pid为1初始化系统,启动系统用户和系统必要的服务,(这一步目…

    Linux 2023年6月13日
    083
  • 5.1 Vim及其安装

    通过前面的学习我们知道,Linux 系统中”一切皆文件”,因此当我们在命令行下更改文件内容时,不可避免地要用到文本编辑器。 作为一名 Linux 初学者,你…

    Linux 2023年6月7日
    0103
  • 国产化之虚拟ARM64-CPU安装银河麒麟操作系统

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟v4,CPU使用飞腾处理器。我本地没有这个国产的处理器,但飞腾是基于 _ARMv8_架构的64位处理器,所以理论上…

    Linux 2023年5月27日
    0325
  • 如何使用 etcd 实现分布式 /etc 目录

    etcd 是一款兼具一致性和高可用性的键值数据库,简单、安全、快速、可信,目前是 Kubernetes 的首要数据存储。我们先来看一段 etcd 官方对于名字的解释。 The na…

    Linux 2023年6月14日
    0133
  • CA证书介绍与格式转换

    PKCS 公钥加密标准(Public Key Cryptography Standards, PKCS),此一标准的设计与发布皆由RSA资讯安全公司(英语:RSA Security…

    Linux 2023年6月6日
    090
  • 【机器学习笔记】一元线性回归原理、公式及代码实现

    线性回归是逻辑回归的基础,逻辑回归又是神经网络的组成部分,用于解决2分类问题 线性回归是所有算法的基础 概念: 线性关系是指变量之间的关系是一次函数,一个自变量x和因变量y的关系表…

    Linux 2023年6月13日
    089
  • sed用法

    基础sed命令 sed OPTIONS… [SCRIPT] [INPUTFILE…] 常用的选项: -n,–quiet: 不输出模式空间中的内容 -i: 直…

    Linux 2023年6月6日
    0130
  • Spring事务管理

    事务的特性:一致性、原子性、隔离性、持久性 Spring事务管理相关接口:PlatformTransactionManager(事务管理器)、TransactionDefiniti…

    Linux 2023年6月7日
    0112
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球