k8s操作手册 2.3
里,也可以装在实体机上 ②规划主机名及ip k8s的服务器使用固定ip地址,配置主机名,要求能解析相应的主机名(master 结点)到对应的ip地址,可以使用内网集群的dns服务器或写入/etc/hosts文件 里。如: 主机名 ip地址 k8s-master1.cof-lee.com 10.99.1.51 k8s-master2.cof-lee.com 10.99.1.52 k8s-master3 com k8s-node01 10.99.1.62 k8s-node02.cof-lee.com k8s-node02 EOF ★k8s初始化时要求系统里有/etc/resolv.conf文件及系统对外通信网口上配置有 默认路由;根据实际情况添加 # cat >> /etc/resolv.conf <文件 里配置信任此镜像仓库地址! # cat >> /etc/hosts < 文件方式去初始化集群(和上面命令行方式二选一) # kubeadm config print init-defaults > /etc/kubeadm-init.yaml #输出初始化配 置文件并编辑 # 0 码力 | 126 页 | 4.33 MB | 1 年前3第29 期| 2023 年9 月- 技术雷达
Spring 91. Mockery 92. Netflix DGS 93. OpenTelemetry 94. Polars 95. Pushpin 96. Snowpark 评估 97. 基准配置文件 98. GGML 99. GPTCache 100. 语法性别 API 101. htmx 102. Kotlin Kover 103. LangChain 104. LlamaIndex 105 和业务的演进过 程。RFCs 可以成为促进演化架构的宝贵工具。不过,为了获得最佳效果,我们建议组织采用轻量级的 RFCs 方 法。如果不限定范围并明确要点,这些文件往往会随着时间的推移而变得越来越长,类似于传统的解决方案架 构文件一样最终被归档和遗忘。 3. 具有可访问性意识的组件测试设计 试验 在软件交付进程中,可访问性要求是 Web 组件测试阶段的一种考察指标。尽管诸如 chai-a11y-axe 是一个全自动的本地化平台,它支持特定上下文的翻译。我们的团队在 ETL 流程或开发工作流中使用 Lokalise API 来翻译可本地化的内容。 Lokalise 支持多种文件格式的可本地化字符串。一个值得强调的方面是它 支持上传整个文件,其中每个键 - 值对都被视为单独的记录并被翻译。在底层,我们利用了 Lokalise 与 Google MT 的集成来处理翻译。 Lokalise 的 Web0 码力 | 43 页 | 2.76 MB | 1 年前3张海宁:使用Kubernetes部署超级账本Fabric
Replicas: 2 P1R1 P1R2 P2R1 SACC2017 在Kubernetes中部署Fabric SACC2017 • Fabric的应用面临几个问题: – 大量配置文件,繁琐且容易出错。 – 开发人员无法专注于应用开发。 – 基于Fabric身份管理的设计,网络中节点增减的步骤繁多。 – 节点的状态不易监控,节点宕机后需手动重启。 • 降低使用门槛,提高易用性成为区块链应用落地的 --dns-opt attempts:2 " 32 架构 - 网络 (2) SACC2017 • 集中生成和存放配置文件,按需导入Pod。 • 支持Pod在各个worker之间的迁移。 • K8s的PV和PVC可以确保每个Fabric的节点只能看到所需要的文件。 33 架构 – 共享存储 SACC2017 • Peer Pod:包括Fabric peer,couchDB(可选), Count: 1 PeerOrgs: - Name: Org1 Domain: org1 Template: Count: 1 39 部署- 生成Fabric配置文件 crypto-config |--- ordererOrganizations | |--- orgorderer1 |0 码力 | 45 页 | 2.70 MB | 1 年前3第1930期:Kubernetes基础介绍
Pod是一组紧密关联的容器集合,它们共享PID、IPC、Network和UTS namespace,是Kubernetes调度的基本单位。 Pod的设计理念是支持多个容器在一个Pod中共享网络和文件系统,可以通过进程间通信和文件共享这种简单高效的方式 组合完成服务。 每个Pod都有一个特殊的称之为“根容器”的Pause容器。Pause容器对应的镜像属于k8s平台的一部分,除了Pause容 器外,每个Pod还 pasue作为根容器, 以他的状态代表整个容器组的状态。 2. pod中多个容器共享pasue容器的IP,共享pause容器挂载的volume。 这样简化了密切相连的容器之间的通信,也解决了他们之间文件共享的问题。 k8s为每一个pod都分配唯一的IP地址,称之为pod ip,一个pod中的多个容器共享 pod ip地址。k8s要求底层网络支持集群内任意两个pod之间网络通信,采用虚拟二 层技术 pod(重启pod里面的所有容器),如果pod所在的node宕机,则会将这个 node上的所有pod重新调度到其他节点上。 静态pod:不存储在etcd中,而是存放在某个具体的node上的一个具体文件中,并只在此node上启动运行。 每个pod可以设置限额,目前可以设置CPU和内存,cpu的单位为core的数量, 是一个绝对值而不是相对值。k8s中是以千分之一为最小单位,一般一个pod 设置为100m到300m,也是就是00 码力 | 49 页 | 4.11 MB | 1 年前3基于 Kubernetes 构建标准可扩展的云原生应用管理平台-孙健波、周正喜
和业务原语 关注点不同 服务语义与抽象程度不同 交互与使用习惯不同 YAML 文件 图形化界面 命令行工具 IaC 配置语言 扩容策略 • 当请求数上升 10% 时,自动扩 容 100 个实例 发布策略 • 当金丝雀实例通 过 99% 的测试时, 按每小时切 10% 流量的节奏进行 发布 YAML 文件 YAML 文件 HorizontalPodAutoscaler CustomMetricsServer CustomMetricsServer Prometheus Service Monitor Istio Virtual Service Deployment Ingress Service YAML 文件 代码、应用、CICD 流水线 容器 Pod Controller 调度 Node Sidecar CNI CSI 为了更好的用户体验: 用户 期望: K8s 提供: 研发与运维人员日益增长的应用管理诉求0 码力 | 27 页 | 3.60 MB | 9 月前3Kubernetes + OAM 让开发者更简单
语义与抽象程度不同 业务运维 3. 交互与使用习惯不同 业务研发、运维 YAML 文件 图形化界面 命令行工具 IaC 配置语言 扩容策略 • 当 RT 上升 10% 时,自动扩容 100 个实例 发布策略 • 当金丝雀实例通过 99% 的测试时,按 每小时切 10% 流量 的节奏进行发布 YAML 文件 YAML 文件 HorizontalPodAutoscaler CustomMetricsServer CustomMetricsServer Prometheus Service Monitor Istio Virtual Service Deployment Ingress Service YAML 文件 代码、应用、CICD 流水线 容器 Pod Controller 调度 Node Sidecar CNI CSI 研发都要做 Kubernetes 专家? Kubernetes 构建 Platform0 码力 | 22 页 | 10.58 MB | 1 年前3sealos 以 kubernetes 为内核的云操作系统
terraform 某些底层 driver 写的不好 云驱动层 01 对接 firecracker cilium openebs 等技术 无性能损失的网络层计量 与隔离 rust 自研分布式文件系统 sealfs 直接对接 rustvmm 绕 开 fuse 02 client manger manger metadata data data metadata metadata 非常适合给数据库这样用 缺陷: 1. 不在磁盘级别提供高可用 所以高可用交给 KB rocketmq 这些应用自身去解决 业务起的有状态容器可用 sealfs 文件系统 sealfs 直接从容器拦截 IO,对接 sealfs 分布式文件系统,避免 fuse 用户态内核态反复横跳 在 Sealos 上使用 GPU 在 Sealos 上利用 Cilium + BPF 实现流量统计 Slide 的强大能力, 而且生态的各种 SDK 可以直 接使用。 推荐使用 kubebuilder 框架去生 成很多代码。 权限限制 禁止掉所有用户越权操作,如查看主机 namespace 共享主机端口,共享主机文件系统等操作 以保障多租户之间相互共享一个集群是安全的 User Namespace N 对 N 横向隔离 & 纵向隔离 逻辑隔离 & 物理隔离 选型 原因 编程语言 Golang/typescripts0 码力 | 29 页 | 7.64 MB | 9 月前3涂小刚-基于k8s的微服务实践
作用 k8s-namespace 通过配置文件关键字dev/test/prod等声明应用所属的环境,隔离不同环境业务,通过特定标识来识别业务线。 k8s-service k8s-dns注册服务名,通过配置文件关键字关联业务线应用名称,保持应用和k8s之间的关联。 k8s-app-name 容器host应用名称,deployment 名,通过配置文件关键字关联业务线应用名称,保持应用和k8s之间的关联。 e节点启动 挂载/data/all-log目录 实时扫描发现新目录日志 logstash通过不同的消费groupid来消费同一 topic互不干扰,日志通过同一topic一分为 二,分别写入es和文件存储 create-path kibana nginx 金丝雀灰度发布 upstream jm-prod.api.svc.cluster.local 80% jm-canaryapi0 码力 | 19 页 | 1.34 MB | 1 年前3Alluxio 助力 Kubernetes, 加速云端深度学习
I Alluxio 服务器 HDFS接口客户端 POSIX接口客户端 Alluxio 服务器 Alluxio 服务器 大数据查询 大数据ETL 模型训练 Alluxio核心功能三:统一的文件系统抽象 Alluxio 服务器 Alluxio在云端AI训练场景的性能好处 • 支持大规模的数据缓存 • 本地内存加速 • 支持数据预热 • LRU缓存管理 Object storage 当本地节点的空间少于1056MB时,数据缓存的调度器不会选择该 节点;转而选择其他节点。 alluxio.user.file.passive.cache.enabled false 当从Alluxio远程worker读文件时,是否缓存文件到Alluxio的本 地worker。 alluxio.user.file.readtype.default CACHE 默认的CACHE_PROMOTE会带来显著的性能开销 策略:1.优先本地加载缓存0 码力 | 22 页 | 11.79 MB | 1 年前3Kubernetes 异常配置检测框架
安全模式 检测工具 … 操作系统 NPD 运行模式 • 集群节点(DaemonSet /Standalong) 问题检测 • 硬件(CPU、内存、磁盘) • 操作系统( NTP、内核死锁、文件系统异常) • Container Runtime(无响应) 问题上报 • API server • Prometheus node-problem-detector Sonobuoy K8s 版本 问题检测 • Kubernetes Conformance-testing(K8s 兼容性检查) • 节点上自定义数据的收集(依赖于自定义插件) 问题上报 • 需要采集和分析结果文件 Kube* CIS Kubernetes Benchmark 集群安全扫描 集群综合检查 执行 bpftrace 检测工具小结 工具 适用场景 局限性 kube-bench 在集群中运行0 码力 | 31 页 | 9.57 MB | 1 年前3
共 28 条
- 1
- 2
- 3