Linux运维
未读虚拟机开机进入emergency mode(紧急模式) ,重启依然也是 通过journalctl查询报错发现挂载/dev/nvme0n1p3出错 通过xfs_repair -v -L /dev/nvme0n1p3进行修复,然后重启即可。
场景近日摸鱼,出现问题在k8s+containerd的环境上删除容器失败,容器一直保持在terminating状态containerd日子显示”failed to check network namespace closed: remove netns:unlinkat *: device or resource busy” ,不影响新创建的容器运行。 12ip netns list 报错 Invalid argument 寻找解决办法百度搜索出来mount信息显示netns还是被mount的,但是umount时又显示not mount查看代码,测试验证都无效果。真的坑!根因其实时 ip netns add命令搞的鬼,和这个命令的行为有关,之前执行过这个命令导致containerd创建的netns不可见。解决办法其实只有umount下/run/netns就好了。 能解决就不会单独写一篇文章了,还是Google搜索引擎强大! 只需一条命令解决 1echo 1 > /proc/sys/fs/may_de ...
641a9888a3f6cff1e10aca8c66628cf6f3a847bbe9838256c52fc18c1fec1d070dd70cc0ea7b28b52fb4d21823a82e11537a1da06a458eece643e4cd92af4c5479ece884c1bfded796b070d1704d6e1acc295c8208dd63a52ab0ecb0c3916dc09123d22b853a7e8e233379d8124e2fc550fd7b09d46703eae2cd8b8bc917610b68af67a0b3323307e70129fa2830152d29526234a0ccae229461fc1bfd4310c8b6063993c8e2c5281fc2ae866833b5011531c9e3968549a22ca4647674cabaa93d7f70cd0fab845cd9cd92778fa8770151bb19d491140654766e6944de10f324a6536e37e57a563001b0bd382c55df332e0ecf1aef056f5f1 ...
641a9888a3f6cff1e10aca8c66628cf6f3a847bbe9838256c52fc18c1fec1d0789957109d5ab82f9544fc473ce35c5c5f8e5e0d05bc2fecce9532d248fea8c3ee0be35644dc23e9e00316e110a5c347119a99400b1527694548b85a8dc35f74e5a7248b1e52a91bbbe7e3c506a93a1d8deafb80e2f523b3bcdb823e0ccc56c6cfe9c6c14b4b9fd8e5101adb9be6d44bb92ac096c08ef5e3fcb978d2bafd7ca4e4349ac525dcf2f063ac609c36f0e7ac37a188e837381fb92dbd30df3760874eb341a0b70b22770f06c31349b9137c518edc870ea1b4f51cc624e7c36c1f6d36c4c95ec243227823645089a765867bd352b548c9c863926e75 ...
641a9888a3f6cff1e10aca8c66628cf6f3a847bbe9838256c52fc18c1fec1d07bf71ad53ce33a604a5f702976a823e5079c8c13b378efa386b3e30832ceebad4c53d26a9687d743e3f7eddcc16f734ad243b250ff3370e74d159028999ecdc7b82dd49193f254ba2f23b838c11ca1781c4e11764f27b0c0d9b67e22b4945ef08224bceadcaf09af4bdd8e18a17e35ac2515f6be9c2a832eb3ad53cebf3d4a52b7a70d82f614bf47509626442e45dd4b92b78efd77b820799898228ce7a202587cb79e0ae198acef7f2c8bca547f6a2724c937a6194c6813a7dee984a7090c6b1ab28d8bb1db2993ab48b568850f1aaa0d3461ca6650503d2e ...
641a9888a3f6cff1e10aca8c66628cf6f3a847bbe9838256c52fc18c1fec1d075856b39590b13bff7a3fbdf865d61cd38d0e04fe19728a850a7e5f0821f8f6b6327a45214d359bc7645c8702b3adedcf4e71363f0a3d89a9e3ac677bebd4190ce8f26a20d05b27733ef4f0a5a52775f1c433135f82fbebab84f9b90a1fdc09453d8669554f1d824966f00bff96519a44494001ebfcb5dedadf6f90dbd75f541c282354a012dac4c62e85419c2dd3184b1d5333536f60808227edbdfe65f5391b2b55cb7af044f37152794efee9f47072f2277559f28cc259882623b046c2285df692718172e42d474daf500e9ff04893fa007c0aa5fb5ffc5 ...
前言 Kubernetes简称k8s,是当前主流的容器调度平台,被称为云原生时代的操作系统。在实际项目也经常发现厂商部署了使用k8s进行管理的云原生架构环境,在目前全面上云的趋势,有必要学习在k8s环境的下的一些攻击手法,本文非常适合刚入门或者准备学习云安全方向的安全人员,每个步骤都是亲手复现整理。文中如有错误的地方,还望各位大佬在评论区指正。 Kubernetes用户管理Kubernetes 集群中包含两类用户:一类是由 Kubernetes管理的service account,另一类是普通用户。 service account 是由 Kubernetes API管理的账户。它们都绑定到了特定的 namespace,并由 API server 自动创建,或者通过 API 调用手动创建。Service account 关联了一套凭证,存储在 Secret,这些凭证同时被挂载到 pod 中,从而允许 pod 与 kubernetes API 之间的调用。 Use Account(用户账号):一般是指由独立于Kubernetes之外的其他服务管理的用 户账号,例如由管理员分发的密钥、Ke ...
K8S Node简介 k8s的node节点需要安装三个组件:containerd/kubelet/kube-proxy pod是存储容器的容器,但容器不止docker一种。 CRI:container runtime interface kubelet:用于操作containerd容器,维持pod的生命周期 。 kube proxy:负载均衡就是通过kube proxy组件完成的。并且,pod与pod之间的通信,各pod间的负载均衡都是通过它来实现的。默认是通过操作防火墙firewall来实现pod的映射。 kubelet安装部署创建工作目录123456mkdir -p /opt/kubernetes/{bin,cfg,ssl,logs} tar xf kubernetes-v1.24.0.tar.gz cd /server/tools/kubernetes/server/bincp kubelet /opt/kubernetes/bin## 复制证书到所有节点scp 10.1.1.11:/opt/certs/ca.pem /opt/kube ...
Kubernetes MasterKubernetes Master节点部署三个服务:kube-apiserver、kube-controller-manager、kube-scheduler和一个命令工具kubectl. Master节点来负责整个集群的管理和控制,其中 kube-apiserver: 服务提供了HTTP Rest接口的关键服务进程,是Kuberneters里所有资源的增删改查等操作的唯一入口,也是集群控制的入口进程. kube-controller-manager: 服务 是kubernetes里面所有资源对象的自动化控制中心,可以理解为资源对象的”大总管” kube-scheduler: 服务负责资源调度(pod调度)的进程,相当于公交公司的”调度室”。 安装Kube-apiserver相关参数介绍 • –logtostderr:启用日志 • —v:日志等级 • –log-dir:日志目录 • –etcd-servers:etcd集群地址 • –bind-address:监听地址 • –secure-port:https安全端口 • – ...
二进制安装Kubernete(k8s) v1.24.0环境准备 主机名 角色 IP 安装软件 k8s-master.boysec.cn 代理节点 10.1.1.100 etcd、kueblet、kube-porxy、kube-apiserver、kube-controller-manager、kube-scheduler、Containerd k8s-node01.boysec.cn 运算节点 10.1.1.120 etcd、kueblet、kube-porxy、Containerd k8s-node02.boysec.cn 运算节点 10.1.1.130 etcd、kueblet、kube-porxy、Containerd 3台vm,每台至少2g。 OS: CentOS 7.9 containerd:v1.6.4 kubernetes:v1.24 etcd:v3.3.22 flannel:v0.12.0 证书签发工具CFSSL: V1.6.0 本次使用单master节点部署,需要多master请移步至一步步编译安装Kubernetes之master计算节点安 ...
Kubernetes-v1.24介绍早在 2020 年 12 月,Kubernetes 就宣布弃用 Dockershim。在 Kubernetes 中,dockershim 是一个软件 shim,它允许您将Docker引擎用作 Kubernetes 中的容器运行时。在即将发布的 v1.24 版本中,我们将移除 Dockershim,弃用和移除之间的间隔,符合项目在弃用后至少一年支持功能的政策。如果您是集群操作员,则本指南包含您在此版本中需要了解的实际情况。此外,您需要做些什么来确保您的集群不会倒塌! 有什么影响吗?如果您正在滚动自己的集群或不确定此删除是否会影响您,请保持安全并检查您是否对 Docker Engine 有任何依赖关系。 注意:使用 Docker Desktop 构建的应用程序容器,不是集群的 Docker 依赖项。由 Docker 创建的容器镜像符合开放容器倡议 (OCI),这是一种 Linux 基金会治理结构,围绕容器格式和运行时定义行业标准。它们可以在 Kubernetes 支持的任何容器运行时上正常工作。 如果您使用来自云提供商的托管 Kubernetes 服务, ...
Traefik 概述Traefik 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。 它支持多种后台 (Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Rest API, file…) 来自动化、动态的应用它的配置文件设置。 它是一个边缘路由器,它会拦截外部的请求并根据逻辑规则选择不同的操作方式,这些规则决定着这些请求到底该如何处理。Traefik 提供自动发现能力,会实时检测服务,并自动更新路由规则。Traefik 的与众不同之处还在于它会自动发现适合你服务的配置。当 Traefik 在检查你的服务时,会找到服务的相关信息并找到合适的服务来满足对应的请求。Traefik 兼容所有主流的集群技术,比如 Kubernetes,Docker,Docker Swarm,AWS,Mesos,Marathon等等;并且可以同时处理多种方式。(甚至可以用于在裸机上运行的比较旧的软件。)有了Traefik,就不需要维护和同步一个单独的配置文件:一切都会自动、实时地发生( ...