简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
无论是容器,还是虚拟机,都依赖于内核中的技术,虚拟机依赖的是 KVM,容器依赖的是 namespace 和 cgroup 对进程进行隔离和资源限制。容器实现封闭的环境主要要靠两种技术,一种是看起来是隔离的技术,称为(命名空间)。在每个 namespace 中的应用看到的,都是不同的 IP 地址、用户空间、进程 ID 等。另一种是用起来是隔离的技术,称为(资源限制),即明明整台机器有很多的 CPU、
感谢http://ju.outofmemory.cn/entry/219849Mac OS X 属于 Apple 独家演绎的 Unix 分支版本,默认使用 UTF-8 编码,当使用不同开发平台的小伙伴们,共同维护一份代码的时候,尤其现在很多人都还在用 Windows 系统的时候,由于 Linux 和 Unix 都不支持 GBK 和 GB2312 的中文编码,所以遇见乱码是在所难免的。毕竟,又不能
感谢http://ju.outofmemory.cn/entry/219849Mac OS X 属于 Apple 独家演绎的 Unix 分支版本,默认使用 UTF-8 编码,当使用不同开发平台的小伙伴们,共同维护一份代码的时候,尤其现在很多人都还在用 Windows 系统的时候,由于 Linux 和 Unix 都不支持 GBK 和 GB2312 的中文编码,所以遇见乱码是在所难免的。毕竟,又不能
在容器里top看到的是宿主机的cpu的原因就是,top查的是/proc/stat文件,这个文件是反应整个宿主机的状态信息的,不是单个容器的。很多工具如Prometheus,k8s中的资源计算,docker的计算最终都是从这个cgroup文件来的。这些指标每个空格隔开是一项,现在就看第14项时utime,即进程的用户态部分占用的cpu时间片。每个进程的状态是放在文件里的,在/proc目录下,每个进程
基于模板生成YAML文件,下载kustomize二进制压缩包:https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.8.1/kustomize_v3.8.1_linux_amd64.tar.gz。kustomize允许用户将不同环境所共享的配置放在一个文件目录下,而将其他不同的配置放在另外的目录下。这
在开发公司自己的paas平台,有一个需求是,用户在发版的时候,只需要在页面上填几个字段,我们在k8s中自动拉起service和deployment等资源,屏蔽k8s的底层技术对上层用户的困扰。就是对任何tutorialv1.Demo或Service、Deployment、Pod的变化,我们的Controller都会监听到,并生成事件,触发Reconcile()方法。在前面的文章我们已经了解了ope
这篇笔记讲的是admission webhook。当某个特定的时间发生时,api server就会查询注册的webhook,并根据一些逻辑确认转发消息给某个webhook。一种是校验类的webhook,只读取信息,做校验判断,不会改变消息,称为validating类型。在k8s中,有3类webhook,admission webhook, authorization webhook 和 CRD c
现在还没有我们自定义的demo crd实例,demo nameSpace下也没有任何pod。在samples目录下有一个默认的资源描述文件tutorial_v1_demo.yaml。验证通过patch修改podNum,来增减pod的数量。controller中也会看到对应的日志。我们apply一下这个demo crd。编译运行controller。controller的日志。看到3个pod都创建出
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config# 永久关闭,reboot生效。这来我装的是不使用docker的版本。最大的好处是提供 99 年证书,用到我跑路是足够了。使用 Sealos,可以安装一个不包含任何组件的裸 Kubernetes 集群。因为我们在oom时应该干脆的杀死应用,而不是用swap续命