
Kubernetes&Docker
文章平均质量分 76
kubernetes
王羲之的之
这个作者很懒,什么都没留下…
展开
-
helm安装、使用、实践
Helm 是管理 Kubernetes 的应用管理工具相当于centos的yum,python中pip,node中的npm.几个概念ChartHelm的应用包,采用tgz格式。类似于Yum的RPM包,其包含了一组定义Kubernetes资源相关的YAML文件。也称为应用Chart。RepoistoryHelm的应用仓库,Repository本质上是一个Web服务器,该服务器保存了一系列的Chart应用包以供用户下载,并且提供了一个该Repository的Chart包的清单文件以供查询。原创 2024-10-12 09:55:39 · 1061 阅读 · 0 评论 -
k8s 二进制集群部署
只2017年开始,断断续续的接触k8s也是有几个年头了,从1.11开始到现在马上都1.20了,真快呀!之前就有想整理下所有技术的想法,毕竟已经35岁的人,闯荡江湖已经12个年头了。是该总结下了,这行说实话干不了几年了。话不多说,等专门写一篇感慨的文章。开整!这块我不会讲的太多,毕竟k8s一个很大的体系,不是一两句话或者两三句话就可以说清楚的。可能说的太深了我也未必能说的清楚,主要是说不清楚吧。但是简单的我还是要说下,主要是应对面试吧。但是说实话理论这事儿干的深了很重要的,在排错的时候,如果有理论加持会事半功原创 2024-10-10 10:25:42 · 741 阅读 · 0 评论 -
K8S-INGRESS原理,部署及应用
Ingress解决的是新的服务加入后,域名和服务的对应问题,基本上是一个ingress的对象,通过yaml进行创建和更新进行加载。来保护 Ingress。的服务)配置成外网能够访问的URL,流量负载均衡,及SSL,并提供域名访问的虚拟主机等,客户通过访问URL(API资源服务的形式,例如:caas.one/kibana)进入和请求Service,一个Ingress控制器负责处理所有Ingress的请求流量,它通常是一个负载均衡器,它也可以设置在边界路由器上,或者由额外的前端来帮助处理HA方式的流量。原创 2024-10-10 10:25:03 · 1676 阅读 · 0 评论 -
pvpvc
metadata:spec:capacity:hostPath:metadata:name:spec:resources:requests:原创 2024-10-08 14:33:45 · 163 阅读 · 0 评论 -
kubernetes强制删除namespace
本文章向大家介绍kubernetes强制删除namespace,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。2、获取需要强制删除的NameSpace信息,删除spec及status部分的内容还有metadata字段后的","号。1、@public-service.json:指的是强制删除NameSpace信息json名称。1、执行命令删除namespace后一直显示Terminating,无法删除namespace。原创 2024-09-25 09:29:10 · 327 阅读 · 0 评论 -
docker zookeeper集群启动报错:Cannot open channel to * at election address /ip:3888
2、是否关闭防火墙:systemctl stop firewalld,systemctl disable firewalld。假如有两台机器,192.168.1.1和192.168.1.2,它们的myid分别是1和2;1、确认在每个$zookeeper_home/data/myid中有对应数字。原创 2024-09-20 17:50:33 · 637 阅读 · 0 评论 -
如何通过Kubectl 重启Pod的六种方法
这个主要是由于在 k8s 中pod 的管理属于rs 等控制器,并不需要运维手动维护,但有时候,我们修改了configmap 的配置文件后,希望重启pod 加载配置,此时就需要 “重启” Pod。这里说的“重启”是加了引号的,准确地来说,是重建pod,给用户的感觉是重启。但是但是但是,重要的话说三遍,它有个局限,必须要求你的 1 号进程要 捕获 TERM 信号,否则在容器里面是杀不死自己的,这个在之前的文章已经介绍过了。这种方法是通过更新Pod ,从触发k8s pod 的更新。这个命令是比较推荐的,通过。原创 2024-10-08 14:34:02 · 1285 阅读 · 0 评论 -
在k8s中通过CoreDNS进行域名解析的其中三种方法
在k8s集群配置完成后,我们可以通过命令“”查看到相应的配置文件,如下图所示:(不同k8s版本配置文件内容可能有细微差异)编辑配置文件,加入如下部分的配置:以上配置文件表明,如果发起针对“www.yanmuhuan.com”的解析,CoreDNS会将这个域名解析请求解析到192.168.80.1这个服务器上。将上述配置内容加入到CoreDNS的配置文件中后,相关的配置文件内容如下所示:通过命令“”进入容器(容器名称根据实际情况进行输入),然后在容器内通过命令“原创 2024-10-08 14:34:20 · 1070 阅读 · 0 评论 -
K8s持久化存储PV和PVC(通俗易懂)
Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足。拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息:Pod 通常是由应用的开发人员维护,而 Volume 则通常是由存储系统的管理员维护。开发人员要获得上面的信息:这样就带来一个管理上的问题:应用开发人员和系统管理员的职责耦合在一起了。如果系统规模较小或者对于开发环境这样的情况还可以接受。但当集群规模变大,特别是对于生成环境,考虑到效率和安全性,这就成了必须要解决的问题。Kubernetes 给出的解决原创 2024-10-08 14:34:40 · 1241 阅读 · 0 评论 -
linux中docker报错:ERROR: Got permission denied while trying to connect to the Docker daemon socket。
从上面的报错信息上我们知道,这句话的大致意思就是在我门试图通过socket去连接docker时权限不被允许。这是应为socket需要root用户才能访问,当前用户的权限不够,所以被禁止了。就是向组docker中添加用户user,-d就是删除该组中的用户。这是需要输入root用户的密码,输入即可正常操作了。这个时候我们就不会收到任何报错信息了。原创 2024-10-08 14:34:56 · 2847 阅读 · 0 评论 -
解决The connection to the server localhost:8080 was refused - did you specify the right host or port?
admin来运行,需要admin.conf文件(conf文件是通过“ kubeadmin init”命令在主节点/etc/kubernetes 中创建),但是从节点没有conf文件,也没有设置 KUBECONFIG =/root/admin.conf环境变量,所以需要复制conf文件到从节点,并设置环境变量就OK了。主节点的admin.conf拷贝到从节点,设置环境变量。kubectl命令需要使用。原创 2024-10-08 14:35:10 · 60 阅读 · 0 评论 -
解决The connection to the server localhost:8080 was refused - did you specify the right host or port?
admin来运行,需要admin.conf文件(conf文件是通过“ kubeadmin init”命令在主节点/etc/kubernetes 中创建),但是从节点没有conf文件,也没有设置 KUBECONFIG =/root/admin.conf环境变量,所以需要复制conf文件到从节点,并设置环境变量就OK了。主节点的admin.conf拷贝到从节点,设置环境变量。kubectl命令需要使用。原创 2024-10-08 14:32:56 · 110 阅读 · 0 评论 -
创建pv,pvc
metadata:spec:capacity:hostPath:metadata:spec:resources:requests:原创 2024-10-08 14:35:44 · 99 阅读 · 0 评论 -
kubernetes强制删除namespace
本文章向大家介绍kubernetes强制删除namespace,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。2、获取需要强制删除的NameSpace信息,删除spec及status部分的内容还有metadata字段后的","号。1、@public-service.json:指的是强制删除NameSpace信息json名称。1、执行命令删除namespace后一直显示Terminating,无法删除namespace。原创 2024-10-08 14:33:13 · 270 阅读 · 0 评论 -
Kubernetes中部署ELK Stack日志收集平台
kubelet会在/var/log/pods和/var/log/containers下面建立软链接,指向/var/lib/docker/containers/$CONTAINERID目录下的容器日志文件。- dissect: #参考https://www.elastic.co/guide/en/beats/filebeat/current/dissect.html。创建一个软链接/var/log/pods指向数据盘挂载点下的某个目录(ln -s /data/var/log/pods /var/log/)原创 2024-10-08 14:35:25 · 1373 阅读 · 0 评论 -
【云原生】k8s 环境快速部署(一小时以内部署完)
如果执行安装时卡住或者直接安装失败,可以再安装(可支持重复执行安装),也可以卸载重新安装。去掉第一次连接ssh ask确认。版本,后续会兼容高版本。原创 2024-10-08 14:36:00 · 87 阅读 · 0 评论 -
轻量级的日志采集组件 Filebeat 讲解与实战操作
Filebeat是一个轻量级的日志数据收集工具,属于Elastic公司的Elastic Stack(ELK Stack)生态系统的一部分。它的主要功能是从各种来源收集日志数据,将数据发送到Elasticsearch、Logstash或其他目标,以便进行搜索、分析和可视化。轻量级:Filebeat是一个轻量级的代理,对系统资源的消耗非常低。它设计用于高性能和低延迟,可以在各种环境中运行,包括服务器、容器和虚拟机。多源收集。原创 2024-10-08 14:36:18 · 1622 阅读 · 0 评论 -
Filebeat on k8s 日志采集实战操作
Filebeat是一个轻量级的开源日志文件和数据收集器,由 Elastic 公司开发,用于采集、解析和发送日志数据。在 Kubernetes 中,Filebeat通常用于采集容器日志,并将其发送到中央日志存储、分析或搜索工具,如 Elasticsearch、Logstash 或 Fluentd。以下是Filebeat在KubernetesFilebeat容器部署:首先,在Kubernetes集群中创建一个或多个Filebeat容器的Pod。这些Pod。原创 2024-10-08 14:36:32 · 935 阅读 · 0 评论 -
k8s ingress高级配置,动态修改上传文件大小限制参数client_max_body_size
通常情况下,service和pod的IP可以被集群网络访问。外部访问的所有流量被丢弃或转发到别处。ingress是允许入站连接到达群集服务的规则集合.可以为外部提供可访问服务的URL,流量负载均衡,可被终止的ssl连接,以及基于配置的虚拟主机。k8s ingress配置官网链接:https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/annotations.md。原创 2024-10-08 14:36:46 · 960 阅读 · 0 评论 -
修改Docker的默认存储路径
执行 docker info 查看,得到以下信息。原创 2024-10-08 15:50:00 · 698 阅读 · 0 评论 -
在本地通过 k8s 部署一个 nginx 镜像
简单点,也不用 minikube 和 kubeadmin,直接通过 docker desktop 部署 k8s。下载完成后会自动安装 docker。docker pull nginx:latest 就可以,拉取 nginx 最新镜像。开启即可,docker desktop 会自动下载本地 k8s 部署需要的镜像。目标:通过 deployment 启动一个 nginx,并且通过浏览器访问。目的,熟悉并学习一下 k8s 的一些特性,毕竟看文档和实操是两码事。原创 2023-12-19 16:13:42 · 1413 阅读 · 0 评论 -
K8s Kubelet 垃圾回收机制
前言Kubelet 垃圾回收(Garbage Collection)是一个非常有用的功能,它负责自动清理节点上的无用镜像和容器。Kubelet 每隔 1 分钟进行一次容器清理,每隔 5 分钟进行一次镜像清理(截止到 v1.15 版本,垃圾回收间隔时间还都是在源码中固化的,不可自定义配置)。如果节点上已经运行了 Kubelet,不建议再额外运行其它的垃圾回收工具,因为这些工具可能错误地清理掉 Kubelet 认为本应保留的镜像或容器,从而可能造成不可预知的问题。原创 2024-10-09 09:20:04 · 2596 阅读 · 0 评论 -
kubesphere 调研与安装
KubeSphere 围绕 Kubernetes 集成了多个云原生生态主流的开源软件。原创 2023-02-20 11:43:39 · 13 阅读 · 0 评论 -
镜像全部加载
啊的身份原创 2023-02-17 16:29:32 · 154 阅读 · 0 评论 -
k8s常见问题梳理
背景:由于集群负载(cpu、内存)高可能导致 mysql 数据库处于 CrashLoopBackOff状态mysql 数据库 Pod 一直处于CrashLoopBackOff状态报错信息Events:Type Reason Age From Message---- ------ ---- ---- -------Warning FailedScheduling 5h8m default-scheduler 0/5 nodes are available: 1 node(s) had taint {nodeE原创 2023-02-17 12:04:11 · 75 阅读 · 0 评论 -
k8s网络|理解 CNI 和 CNI 插件
中主机和容器也分属不同的网段,它与 Overlay 模式的主要区别在于它的跨主机通信是通过路由打通,无需在不同主机之间做一个隧道封包。的典型特征是容器独立于主机的 IP 段,这个 IP 段进行跨主机网络通信时是通过在主机之间创建隧道的方式,将整个容器网段的包全都封装成底层的物理网络中主机之间的包。K8s 网络模型采用 CNI(Container Network Interface, 容器网络接口) 协议,只要提供一个标准的接口,就能为同样满足该协议的所有容器平台提供网络功能。Overlay 模式。原创 2023-02-17 11:54:27 · 215 阅读 · 0 评论 -
3.部署docker
Docker 安装VMware 虚拟机上准备三台虚拟机docker1 docker2 docker-registry (仓库)docker1: 10.0.0.101 docker2: 10.0.0.102 docker-registry 10.0.0.103systemctl restart network修改三个主机名hostnamectl set-hostname docker101.comhostnamectl set-hostname docker102.comhostnamectl set-hos原创 2022-06-26 21:42:29 · 87 阅读 · 0 评论 -
20.docker cp从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面
docker从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面1、从容器里面拷文件到宿主机?s 答:在宿主机里面执行以下命令 docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径 示例: 假设容器名为testtomcat,要从容器里面拷贝的文件路为:/usr/local/tomcat/webapps/test/js/test.js, 现在要将test.js从容器里面拷到宿主机的/opt路径下面,那么命令应该怎么原创 2022-06-26 22:30:47 · 6774 阅读 · 1 评论 -
11.namespace介绍
namespace 资源隔离UTS namespace(主机名隔离)IPC namespacePID namespacemount namespacenetwork namespaceuser namespacesDocker容器本质上是宿主机上的进程。docker通过namespace实现了资源隔离,通过cgroups实现了资源限制,通过写时拷⻉机制(copyon-write)实现了⾼效的⽂件操作。namespace 资源隔离想要实现⼀个资源隔离的容器,也许第⼀反应就是chroot命令,这条命令给⽤户最直原创 2022-06-26 22:05:21 · 117 阅读 · 0 评论 -
2.docker介绍
什么是Docker? aPaaS Platform as a Service为开发者搭建开发环境,例如 Java环境、Python环境、Ruby环境、数据库、中间件等。Docker就是虚拟化的一种轻量级替代技术。Docker的容器技术不依赖任何语言、框架或系统,可以将App变成一种标准化的、可移植的、自管理的组件,并脱离服务器硬件在任何主流系统中开发、调试和运行。简单的说就是,在 Linux 系统上迅速创建一个容器(类似虚拟机)并在容器上部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装、部原创 2022-06-26 21:32:58 · 108 阅读 · 0 评论 -
3.1 docker 基本命令
查看docker安装后的基本信息[root@docker ~]# docker info[root@docker ~]# docker versionClient version: 1.6.2 Client API version: 1.18 Go version (client): go1.4.2 Git commit (client): 7c8fca2/1.6.2 OS/Arch (client): linux/amd64 Server version: 1.6.2 Server API version原创 2022-06-26 21:37:18 · 106 阅读 · 0 评论 -
13.overlay覆盖文件系统
实验OverlayFS是一种目前广泛应用的层次文件系统,openwrt、树莓派、docker等上都有应用。它于2014年被合并到Linux3.18内核中,顾名思义其主要特性就是“覆盖”,OverlayFS将单个Linux主机上的两个目录分层,并将它们显示为单个目录。这些目录称为层,OverlayFS的下层目录为"lowerdir"上层目录为"upperdir",合并目录为"merged",层次结构如图: overlay具有:上下合并同名覆盖写时拷贝等特点,具体如下:Lowerdir与Upperdir同名文件原创 2022-06-26 22:16:46 · 796 阅读 · 0 评论 -
8.docker的网络
转自:http://www.cnblogs.com/gispathfinder/p/5871043.html 我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式:· host模式,使用--net=host指定。· container模式,使用--net=container:NAME_or_ID指定。· none模式,使用--net=none指定。· bridge模式,使用--net=bridge指定,默认设置。下面分别介绍一下Dock原创 2022-06-26 21:53:34 · 88 阅读 · 0 评论 -
1.container介绍
五原创 2022-06-26 21:23:58 · 375 阅读 · 0 评论 -
6.docker数据卷
docker数据卷docker数据卷是经过特殊设计的目录,可以绕过联合文件系统(ufs),为一个或者多个容器提供访问数据卷设计的目的,在于数据的永久化,它完全独立与容器的生存周期,因此,docker不会在容器删除时删除其挂载的数据卷,也不会存在类似的垃圾收集机制,对容器引用的数据卷进行处理.1.docker数据卷独立于docker的存在,与容器生存周期分离2.docker数据卷存在于docker的宿主机文件系统中3.docker数据卷可以是目录也可以是文件4.docker容器和利用数据卷和宿主机资源共享5.原创 2022-06-26 21:47:56 · 275 阅读 · 0 评论 -
4.1 harbor部署(docker 仓库)
一.介绍1. Harbor,是一个英文单词,意思是港湾,港湾是干什么的呢,就是停放货物的,而货物呢,是装在集装箱中的,说到集装箱,就不得不提到Docker容器,因为docker容器的技术正是借鉴了集装箱的原理。所以,Harbor正是一个用于存储Docker镜像的企业级Registry服务。Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装2. Registry是Dcoker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Re原创 2022-06-26 21:44:05 · 270 阅读 · 0 评论 -
14. docker mongo
一、mongo基本安装二、mongo权限三、mongo 基本命令MongoDB 查看所有用户账号信息mongo以时间戳删除数据删除集合实例一、mongo基本安装1.使用docker拉取mongo镜像docker pull mongo 2.查看容器id-- docker ps -a3.进入mongo 容器docker exec -it 44f96cf87614 mongo admin44f96cf87614 为mongo容器id4.创建一个 admin 管理员账号:db.createUser({ user:原创 2022-06-26 22:18:40 · 236 阅读 · 0 评论 -
15.镜像安全-镜像加密
容器安全可以归纳分类如下:本文主要讨论第四点——镜像保密性。社区目前对于镜像保密性的工作主要由IBM公司的Brandon Lum和Harshal Patil主导进行。由于镜像加密特性会改动OCI标准中的镜像格式部分:the Image Specification image-spec,因此在详细介绍镜像加密原理之前有必要先了解一下OCI(Open Container Initiative)由 Docker,CoreOS以及容器行业中的其他领导者在2015年6月启动,致力于围绕容器格式和运行时创建开放的行业标原创 2022-06-26 22:27:25 · 3271 阅读 · 0 评论 -
手动阀手动阀
阿杜Edge云边隧道主要用于代理云端访问边缘节点组件的请求,解决云端无法直接访问边缘节点的问题(边缘节点没有暴露在公网中)。本文首先介绍了SuperEdge云边隧道的配置以及数据结构,之后从源码角度深度剖析了network-tunnel的核心模块实现,有助于读者对SuperEdge云边隧道的进一步理解和使用 » read more......原创 2022-06-26 22:32:23 · 161 阅读 · 0 评论 -
1.0错误解决
doceker原创 2022-06-26 21:21:06 · 880 阅读 · 0 评论