Kubernetes 异常配置检测框架顾静, 阿里云 邓隽, 阿里云 Kubernetes 异常配置检测框架 我们来自阿里云容器服务 • 顾静,研发工程师 • 邓隽,技术专家 我们参与打造 • 容器服务(ACK/ASK) • 容器镜像服务(ACR) • 服务网格(ASM) • … 1 Kubernetes 典型异常 2 检测框架演进 3 生产实践 4 总结 Kubernetes 使用日常 • 应用部署 • API Server Pod Master API Server Pod Master API Server Pod Kubernetes 典型异常 网络异常 • 安全组、路由表配置错误 • 节点防火墙软件等修改 iptables、内核参数 • 网络链路长,手动排查成本高 异常影响 • 应用间无法正常通信 • 集群内 Controller 无法正常工作 YUM 安装自动运维工具 在集群中运行 CIS Benchmark 检测项依赖于 CIS Benchmark 内容 能发现集群核心组件配置错误 无法发现如 Flannel 组件异常 增加检查项流程较复杂 kuberhealthy 在集群中运行 CronJob 实现检查 可以自定义检查项 无法检测集群核心组件配置 集群异常时无法进行检测 kube-hunter 适用于集群安全检测 仅能检测集群安全性 kubectl-trace0 码力 | 31 页 | 9.57 MB | 1 年前3
k8s操作手册 2.3①k8s对系统要求 linux内核在3.10及以上,服务器规格2核cpu,2G内存及以上,可以装在虚拟机 里,也可以装在实体机上 ②规划主机名及ip k8s的服务器使用固定ip地址,配置主机名,要求能解析相应的主机名(master 结点)到对应的ip地址,可以使用内网集群的dns服务器或写入/etc/hosts文件 里。如: 主机名 ip地址 k8s-master1.cof-lee .conf文件及系统对外通信网口上配置有 默认路由;根据实际情况添加 # cat >> /etc/resolv.conf <配置selinux,则可关闭SELinux,若对安全性要求较高,则需自行配置 x,若对安全性要求较高,则需自行配置 # sed -i '/^SELINUX/s/enforcing/disabled/' /etc/selinux/config # setenforce 0 #关闭selinux ④ulimit设置 # cat >> vi /etc/security/limits.conf < 0 码力 | 126 页 | 4.33 MB | 1 年前3
⾸云容器产品Kubernetes操作指南创建⽆状态应⽤nginx �. 配置容器 �. ⾼级配置 �. 创建成功 案例--如何创建⼀个WordPress ⽅法⼀:nodePort + Haproxy 外⽹访问 WordPress 配置⽅法 �. 创建 StorageClass、Namespace 和 pvc 资源 �. 部署MySQL容器组 �. 部署WordPress容器组 �. 配置 Haproxy 负载均衡 �. 访问 WordPress ⽅法⼆:Ingress 外⽹访问 WordPress 配置⽅法 �. 创建 Namespace 和 PVC 资源 �. 部署MySQL容器组 �. 部署WordPress容器组 �. 创建 Service �. 创建 Ingress �. Haproxy 策略配置上述 Ingress 与服务映射的 �� 端⼝ �. 访问 Wordpress 容器服务 Kubernetes 进⼊集群⻚⾯ -> 右上⻆点击创建集群 设置集群名称 -> 选择虚拟数据中⼼ -> 选择集群私⽹ip⽹段 -> 选择计费⽅式-> 设置master节点 - > 设置worker节点 -> 选择HA配置 -> 选择集群公⽹ip -> 设置集群ssh登录密码 -> 确认⽆误后点击 确认 2.使⽤须知 集群管理 1.简介 2.使⽤须知 3.操作说明 4 5 进⼊集群⻚⾯ -> 查看创建的集群,状态为正常代表创建成功0 码力 | 94 页 | 9.98 MB | 1 年前3
Kubernetes开源书 - 周立12-Master与Node的通信 13-Node 14-Pod 15-Replica Set 16-Deployment 17-StatefulSet 18-Daemon Set 19-配置最佳实践 20-管理容器的计算资源 21-Kubernetes资源分配 22-将Pod分配到Node 23-容忍与污点 24-Secret 25-Pod优先级和抢占 26-Service 上,并结合了社区中最佳的创意和实践。 为什么使⽤容器 寻找你为啥要使⽤容器 的原因? 01-什么是Kubernetes 4 部署应⽤程序的旧⽅法是使⽤操作系统的软件包管理器在主机上安装应⽤程序。这种⽅式,存在可执⾏⽂件、配置、库 和⽣命周期与操作系统相互纠缠的缺点。⼈们可构建不可变的虚拟机映像,从⽽实现可预测的升级和回滚,但VM是重 量级、不可移植的。 新⽅法是部署容器,容器基于操作系统级别的虚拟化⽽不是硬件虚拟 持在Kubernetes上运⾏CI⼯作流,⽽不强制⼯作流如何⼯作。 允许⽤户选择其⽇志记录、监视和警报系统。(它提供了⼀些集成。) 不提供/授权⼀个全⾯的应⽤配置语⾔/系统(例如 jsonnet )。 不提供/不采⽤任何综合的机器配置、维护、管理或⾃愈系统。 另⼀⽅⾯,⼀些PaaS系统可运⾏在 Kubernetes上,例如 Openshift 、 Deis 、Eldarion 等。 您也可实现⾃⼰的定制0 码力 | 135 页 | 21.02 MB | 1 年前3
K8S安装部署开放服务A. 准备主机/虚拟机 安装 k8s 集群需要至少 4 台主机/虚拟机,下面是参考配置: 1 台作为 k8s master CPU:2 核, 内存:8GB, 系统盘:40GB, docker 数据盘:80GB 3 台作为 k8s node CPU:2 核, 内存:16GB, 系统盘:40GB, docker 数据盘:40GB, ceph 数据盘:1TB *下面是 vSphere 上创建虚拟机的步骤: A1. 创建 k8s-master CPU:2 核, 内存:8GB,系统盘:40GB,docker 数据盘:80GB step1. 从模板上新建虚拟机 Step2. 配置虚拟机网络 打开虚拟机的控制台: 设置主机名: hostnamectl set-hostname k8s-master 设置网络: cd /etc/sysconfig/network-scripts 数据盘:40GB,ceph 数据盘:200GB 【注】所有节点(k8s-master, k8s-node1, k8s-node2, k8s-node3)均需做以下 B~D: B. 升级&配置 centos7 Step1. 升级 linux 内核 uname –r wget https://cbs.centos.org/kojifiles/packages/kernel/4.90 码力 | 54 页 | 1.23 MB | 1 年前3
第1930期:Kubernetes基础介绍机制。 水平扩展:通过简单明了实现水平扩展,基于CPU等资源负载率的自动水平扩展。 服务发现和负载均衡:实现内部负载均衡可以实现服务访问负载。 自动发布和回滚:可以自动实现版本的发布和回滚。 秘钥和配置管理:对于密码等信息,专门提供了Secert对象为其解耦。 存储编排:支持多种不同类型的存储,包括本地存储、云存储、网络存储等。 批量处理执行:除服务型应用,还支持批处理作业CI(持续集成),如有需要,一样可以实现容器故障后修复。 Succeeded Failed Unknown 15 www.h3c.com Confidential 秘密 15 15 K8s Pod生命周期介绍 Pending。这个状态意味着,Pod 的 YAML 文件(或通过kubectl命令创建Pod)已经提交给了 Kubernetes,API 对象已 经被创建并保存在 Etcd 当中。但是,这个 Pod 里有些容器因为某种原因而不能被顺利创建。比如,调度不成功。 可以在资源对象定义时 确定,也可以在对象创建后动态添加和删除。 我们可以使用指定的资源对象绑定一个或者多个不同的lable来实现多维度的资源分组管理功能,以便于灵活、方便的 对资源进行分配、调度、配置、部署等工作。 Lable就是给资源对象打一个标签,然后通过Label Secletor(标签选择器)查询和筛选拥有某些Label的资源对象, k8s通过这种方式实现了类似SQL的简单和通用的对象查询机制。0 码力 | 49 页 | 4.11 MB | 1 年前3
张海宁:使用Kubernetes部署超级账本Fabriclocal Port: 9443 NodePort: 31233 Protocol: TCP Port: 9443 SACC2017 K8s Cluster ReplicaSet.yaml ContainerImage1 Replicas: 3 ContainerImage2 Replicas: 2 复制控制器Replication Controller K Deployment_Y.yaml ContainerImage1 Replicas: 1 ContainerImage2 Replicas: 2 P1R1 P1R2 P2R1 SACC2017 在Kubernetes中部署Fabric SACC2017 • Fabric的应用面临几个问题: – 大量配置文件,繁琐且容易出错。 – 开发人员无法专注于应用开发。 的 首要条件。 28 机遇与挑战 SACC2017 29 为什么采用Kubernetes • Fabric特点 • 组件都封装成容器,很方便部署在容器平台上 • 需要灵活地配置和调整 • Kubernetes优势 • 面向微服务架构的容器平台,扩展方便 • 提供高可用、监控管理、自动化运维等能力 • 具备多租户的能力,可运行多个互相隔离的 Fabric实例0 码力 | 45 页 | 2.70 MB | 1 年前3
涂小刚-基于k8s的微服务实践nfs prometheus filebeat elastsearch flanneld calico openstack kvm docker 镜 像 管 理 弹性伸缩 智能调度 配置管理 健康检查 服务发现 动态dns 负载均衡 容器监控 日志采集 应用监控 节点监控 动态存储 本地存储 网络存储 静态存储 代码检查 代码编译 镜像编译 服务发布 镜像同步 镜像上传 镜像下载 k8s-api配置对象 作用 k8s-namespace 通过配置文件关键字dev/test/prod等声明应用所属的环境,隔离不同环境业务,通过特定标识来识别业务线。 k8s-service k8s-dns注册服务名,通过配置文件关键字关联业务线应用名称,保持应用和k8s之间的关联。 k8s-app-name 容器host应用名称,deployment 名,通过配置文件关键字关联业务线应用名称,保持应用和k8s之间的关联。 1.系统启动,flanneld下发docker子网配置,docker启动获 取子网配置生成docker0 生成gateway网卡; 2.node1,node的kubelet收到指令创建一个新的pod容器; 3.docker开始创建pod,从flanneld下发子网池生成pod-ip- eth; 4.kube-proxy跟据svc yaml创建ipvs-eth子网卡; 5.flanneld0 码力 | 19 页 | 1.34 MB | 1 年前3
石墨文档Go在K8S上微服务的实践-彭友顺日志采集 加载配置 监控采集 资源隔离 故障转移 资源调度 权限控制 标准统一 运维简单 框架简单 编译 部署 应用开发 启动方式 日志采集 加载配置 监控采集 资源隔离 故障转移 资源调度 权限控制 编译 部署 2014年6月K8S开源 微服务的生命周期 第二部分 微服务的生命周期 开发 测试 部署 启动 调用 治理 微服务的开发阶段 配置 对接 Debug • 配置驱动 • 配置补齐 • 配置工具 统一配置、调用用方式,降低开发心智负担 • Proto的管理 • 错误码管理 • 调试gRPC • 调试信息 • 错误定位 问题:每种开源组件的配置、调用方式、debug方式、记录日志方式都不一样 微服务的开发阶段 问题:gRPC未设置连接错误,阻塞模式报错不正确 Redis、MySQL连接数配置未设置?超时未设置? 配置 对接 对接 Debug • 配置驱动 • 配置补齐 • 配置工具 • Proto的管理 • 错误码管理 • 调试gRPC • 调试信息 • 错误定位 // FailOnNonTempDialError only affects the initial dial, and does not do // anything useful unless you are also using WithBlock()0 码力 | 41 页 | 3.20 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 攻击路径分析 试验 攻击路径分析是一种分析和评估潜在攻击路径的安全分析方式,黑客可能按照这些来自组织内系统网络的潜在 攻击路径进行攻击。此前的多数安全分析策略或工具主要聚焦在特定分线领域,例如错误的配置,脆弱的容器, 和常见漏洞上。这些孤立的方法意味着团队们不能看到这些风险与技术栈上其他层的弱点组合产生的危险攻击 路径。尽管这一技术已提出一段时间,但是近期安全分析工具的进展能使安全团队更易使用这项技术。Orca 都提供了相应的支持程序,可以用来创建和配置这些服务,例如 Splunk、 Datadog、PagerDuty 和 New Relic。因此,我们建议团队除了云资源外,还应使用 Terraform 创建监控和告 警。这将实现更模块化的 IaC,更易于理解和维护。与所有 IaC 一样,同时使用多种方式进行配置变更,会带来 不一致的风险。所以,我们建议禁用通过用户界面和 API 的方式处理配置变更,确保 Terraform0 码力 | 43 页 | 2.76 MB | 1 年前3
共 53 条
- 1
- 2
- 3
- 4
- 5
- 6













