pod运行一段时间后,内存持续增长,甚至oom的情况.动机容器化过程中,我们经常会发现kubernetes集群内pod的内存使用率会不停持续增长,加多少内存吃多少内存,如果对cgroup内存的构成不是很清楚的情况下,单纯看监控看不出什么问题。经过一番查阅,目前总结出大致有2种导致这种情况的场景。内存泄露io缓存案例分析我们先从内存泄露分析,刚好手头有个pod也是这种情况。内存泄露进入对应的pod内部。我们先看看它用了多少内存,prometheus也是取这个值做为容器的内存使用率的。#cat/sys/fs/cgroup/memory/memory.usage_in_bytes4192538624
环境准备四台Linux服务器主机名IP角色k8s-master-94192.168.0.94masterk8s-node1-95192.168.0.95node1k8s-node2-96192.168.0.96node2habor192.168.0.77镜像仓库三台机器均执行以下命令:查看centos版本[root@localhostWork]#cat/etc/redhat-releaseCentOSLinuxrelease8.5.2111关闭防火墙和selinux[root@localhost~]#systemctlstopfirewalld[root@localhost~]#systemc
创建连接K8S的凭据查看需要使用到的命名空间[root@k8s~]#kubectlgetns|greparts-systemarts-systemActive16d创建serviceaccounts[root@k8s~]#kubectlcreatesajenkins-k8s-narts-systemserviceaccount/jenkins-k8screated[root@k8s~]#kubectlgetsa-narts-system|grepjenkinsjenkins-k8s114s对jenkins做cluster-admin绑定[root@k8s~]#kubectlcreateclus
知识点1、云原生-K8s安全-etcd未授权访问2、云原生-K8s安全-Dashboard未授权访问3、云原生-K8s安全-Configfile鉴权文件泄漏4、云原生-K8s安全-KubectlProxy不安全配置章节点:云场景攻防:公有云,私有云,混合云,虚拟化集群,云桌面等云厂商攻防:阿里云,腾讯云,华为云,亚马云,谷歌云,微软云等云服务攻防:对象存储,云数据库,弹性计算服务器,VPC&RAM等云原生攻防:Docker,Kubernetes(k8s),容器逃逸,CI/CD等搭建环境使用3台Centos7(可参考录像或者看下面两个文章搭建)https://www.jianshu.com/p/
前言此文所使用服务的环境为:docker版本:v25.0.3kubernetes版本:v1.25.01安装准备部署k8s集群的节点按照用途可以分为如下2类角色master:集群的master节点,集群的初始化节点slave:集群的slave节点,可以是多台主机各个节点部署的相关服务k8s-master:etcd、kube-apiserver、kube-controller-manager、kubectl、kubeadm、kubelet、flannel、dockerk8s-node-01:kubectl、kubelet、kube-proxy、flannel、dockerK8s-node-02:k
要将分支名从“main”改为“master”,请按照以下步骤操作:首先,确保你已经在要重命名的分支上。通常,这是“main”分支。要检查当前分支,请运行以下命令:gitbranch这将显示所有本地分支,当前分支前会有一个星号(*)。如果你需要切换到“main”分支,请运行以下命令:gitcheckoutmain现在,你可以使用gitbranch命令将“main”分支重命名为“master”。运行以下命令:gitbranch-mmainmaster这将把当前分支(即“main”分支)重命名为“master”。如果你有远程仓库,并且希望将重命名后的分支推送到远程仓库,请运行以下命令:gitpush
痛点在接触k8s一段时间以后.有个问题一直困扰着我.线上日志是用graylog工具聚合的.但是存在延时15分钟的问题.为了提高效率.想直接用kubectl命令行查看pod的日志.然而线上分灰度与正式环境且一个服务会有多个pod实例运行.那么请求进来了应该查看哪个pod的日志呢?思考过程1.查看单个pod日志查看一个pod日志的方法我知道:kubectllogs[-f][-nnamspace]pod还有一种方式是进入pod后查看应用内部的日志:kubectlexec-it[-nnamespace]podbash2.查看多个pod的日志那么,如果想查看多个pod中的日志呢?google一番,找到了
一、rc控制器资源的概述 replicationcontrollers控制器资源,简称:rc控制器; 简单理解,rc控制器就是控制相同的pod副本数量; 使用rc控制器资源创建pod,就可以设定创建pod的数量;二、rc控制器资源管理1,编辑rc资源清单[root@k8s231rc]#vimrc.yamlapiVersion:v1kind:ReplicationControllermetadata: name:rc01spec: #控制pod的副本数量 replicas:5 #选择要创建副本的pod的标签(关联pod标签,把谁的副本设置成5个呀?) selector: k8
一、RBAC概述1,k8s集群的交互逻辑(简单了解) 我们通过k8s各组件架构,知道各个组件之间是使用https进行数据加密及交互的,那么同理,我们作为“使用”k8s的各种资源的使用者,也是通过https进行数据加密的; k8s通过我们家目录下的证书来判断我们是谁?通过证书内容来认定我们的权限;用户证书的位置[root@k8s231~]#ll-a.kube/config -rw-------1rootroot5634Jan 119:40.kube/config2,k8s的安全架构(简单了解)3,RBAC用户授权的逻辑(重要)用户/主题Topic 1,User 2,Ser
目录涉及内容:一、CICD服务器环境搭建1、docker环境安装(1)、拉取镜像,启动并设置开机自启(2)、配置docker加速器2、安装并配置GitLab(1)、创建共享卷目录(2)、创建gitlab容器(3)、关闭容器修改配置文件(4)、修改完配置文件之后。直接启动容器(5)、相关的git命令(针对已存在的文件夹)3、安装配置远程镜像仓库harbor(1)、首先需要设置selinux、防火墙(2)、安装并启动docker并安装docker-compose,关于docker-compose,这里不用了解太多,一个轻量的docker编排工具(3)、解压harbor安装包:harbor-offl