草庐IT

K8sgpt-Operator

全部标签

k8s containerd集群配置安装完整踩坑教程

完整踩坑和精简内容k8scontainerd配置containerd安装参考k8s安装参考环境两台机器hostnamectlset-hostnamemasterhostnamectlset-hostnamenode1#10.1.1.10master#10.1.1.11node1cat>/etc/hostsEOF127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain610.1.1

k8s网络通信

详解Kubernetes网络模型Kubernetes是为运行分布式集群而建立的,分布式系统的本质使得网络成为Kubernetes的核心和必要组成部分,了解Kubernetes网络模型可以使你能够正确运行、监控和排查应用程序故障。网络所涉及的内容很多,拥有许多成熟的技术。对于不熟悉的人来说可能会非常痛苦,因为大多数人对网络都有先入为主的观念,并且有很多新旧概念需要理解并组合成一个连贯的整体。所说的网络可能包括网络命名空间、虚拟接口、IP转发和网络地址转换等技术。本指南旨在通过讨论每种Kubernetes相关技术以及如何使用这些技术来启用Kubernetes网络模型的描述来揭开Kubernetes

k8s重启服务(kubectl)

步骤Servicekubectlgetservices-nfeature-1|grepxxxxxx-cloud-xxx-xxx-serviceClusterIP172.21.7.9none>8080/TCP,9999/TCP5d23hDeploymentkubectlgetdeploymentsxxx-cloud-xxx-xxx-service-nfeature-1NAMEREADYUP-TO-DATEAVAILABLEAGExxx-cloud-xxx-xxx-service1/1115d23h重启Deploymentkubectlrolloutrestartdeploymentxxx-clo

记NVIDIA显卡A100在K8S POD中“Failed to initialize NVML: Unknown Error“问题解决

记NVIDIA显卡A100在K8SPOD中"FailedtoinitializeNVML:UnknownError"问题解决问题描述因项目原因需要在k8s上跑GPU相关的代码,优选使用NVIDIAA100显卡,但在根据官方文档简单并部署GitHub-NVIDIA/k8s-device-plugin:适用于Kubernetes的NVIDIA设备插件后,出现了pod中GPU运行一段时间后丢失的问题,进入容器后发现nvidia-smi命令报错"FailedtoinitializeNVML:UnknownError"。尝试删除并且重建容器后,刚开始nvidia-smi命令正常,但是在大约10秒过后,重

K8s in Action 阅读笔记——【13】Securing cluster nodes and the network

K8sinAction阅读笔记——【13】Securingclusternodesandthenetwork13.1Usingthehostnode’snamespacesinapodPod中的容器通常在不同的Linux名称空间下运行,这使得它们的进程与其他容器或节点默认名称空间下运行的进程隔离开来。例如,我们学习到每个Pod都拥有自己的IP和端口空间,因为它使用其自己的网络名称空间。同样,每个Pod也拥有自己的进程树,因为它有自己的PID名称空间,并且它还使用自己的IPC名称空间,只允许在同一Pod中的进程通过IPC(Inter-ProcessCommunication)机制相互通信。13.

k8s - docker/containerd拉取私有仓库镜像

背景:公司内部搭建Harbor作为镜像仓库,k8s底层为containerd运行时,此时需要拉取私有仓库镜像有两种方案:第一种,在containerd的配置文件内配上harbor的admin管理员账号的认证信息,那么不管仓库是否是私有,管理员都可以拉取该仓库下的镜像。但是有个弊端,就是如果不同用户的话,只要知道别人的仓库名称和镜像名称等信息,那么底层实际上是可以用别人仓库下的镜像的,这就无法做到用户隔离了。第二种,每个用户都对应一个namespace,在namespace下创建secret用于记录该用户的harbor账号及密码,用于拉取镜像时通过验证。这里大家可以参考一下官网的文档https:

【面试题系列】关于K8s—Job的2个问题

 序言人生是一场消耗,要把美好的时光放在喜欢的人与事上。写在前面 前面学习了job,现在思考一下两个问题文章标记颜色说明:黄色:重要标题红色:用来标记结论绿色:用来标记一级论点蓝色:用来标记二级论点第1个问题job执行完之后不会立刻从k8s面板里删除,你可以看到有很多留存状态的记录,如果cronjob频次很高,留下的这些job记录就会增长,有没有隐患?解答:频繁留存未删除的Job记录可能会导致以下隐患:浪费资源:每个Job都需要占用一定的资源,包括CPU、内存等,如果留存的Job记录过多,就会浪费宝贵的资源。影响性能:Kubernetes控制面板需要定期查询Job状态,如果留存的Job记录过多

【K8S系列】深入解析K8S存储

序言做一件事并不难,难的是在于坚持。坚持一下也不难,难的是坚持到底。文章标记颜色说明:黄色:重要标题红色:用来标记结论绿色:用来标记一级论点蓝色:用来标记二级论点Kubernetes(k8s)是一个容器编排平台,允许在容器中运行应用程序和服务。今天学习一下k8s存储相关知识希望这篇文章能让你不仅有一定的收获,而且可以愉快的学习,如果有什么建议,都可以留言和我交流 专栏介绍这是这篇文章所在的专栏,欢迎订阅:【深入解析k8s】专栏简单介绍一下这个专栏要做的事:主要是深入解析每个知识点,帮助大家完全掌握k8s,以下是已更新的章节这是专栏介绍文章地址:【深入解析K8S专栏介绍】今天我们来看一下K8s存

K8S发布应用步骤详解

前言首先以SpringBoot应用为例介绍一下k8s的发布步骤。1.从代码仓库下载代码,比如GitLab;2.接着是进行打包,比如使用Maven;3.编写Dockerfile文件,把步骤2产生的包制作成镜像;4.上传步骤3的镜像到远程仓库,比如Harhor;5.编写Deployment文件;6.提交Deployment文件到k8s集群;从以上步骤可以看出,发布需要的工具和环境至少包括:代码仓库(GitLab)、打包环境(Maven)、镜像制作(Docker)、镜像仓库(Harbor)、k8s集群等。当前,也可以借助一些开源的系统来发布你的应用,比如:Jenkins、DHorse等。详细步骤假如

Rancher:外部服务连接K8S-MongoDB服务

Rancher:外部服务请求K8S-MongoDB服务一、前置条件二、「Layer4」与「Layer7」LoadBalancing的区别三、部署容器化MongoDB四、LoadBanlancerofService五、mongoDB验证连接六、总结#参考链接[1]HowaccessMongoDBinKubernetesfromoutsidethecluster[2]cannotconnecttomongo-expressbehindingressk8s[3]DefiningaService一、前置条件1、K8S集群支持7层负载均衡2、Rancher容器管理平台3、对K8S中的Service、Po