自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 收藏
  • 关注

原创 【云原生】Kubernetes----轻量级的现代HTTP反向代理和负载均衡器之Traefik

Ingress其实就是从 kuberenets 集群外部访问集群的一个入口,将外部的请求转发到集群内不同的 Service 上,其实就相当于 nginx、haproxy 等负载均衡代理服务器,有的人可能觉得我们直接使用 nginx 就实现了,但是只使用nginx这种方式有很大缺陷,每次有新服务加入的时候怎么改 Nginx 配置?不可能让我们去手动更改或者滚动更新前端的 Nginx Pod 吧?那我们再加上一个服务发现的工具比如 consul如何?貌似是可以,对吧?

2024-06-14 16:31:36 646

原创 【云原生】Kubernetes----Rancher助力Kubernetes监控

然而,随着集群规模的扩大和复杂性的增加,如何有效地监控K8s集群的性能、资源使用情况以及应用的健康状况,成为了运维人员必须面对的挑战。Rancher作为一款开源的企业级K8s管理平台,提供了强大的监控能力,帮助用户实现集群的全方位掌控。这里,容器内的80端口映射到了宿主机的80端口,允许外部访问容器运行的服务。【Port Name】输入 web,【Listening Port】输入 80,【Target Port】输入 80,【Node Port】输入 32000。给容器命名可以帮助管理和识别特定的容器。

2024-06-14 15:13:00 1010

原创 【kubernetes】k8s中包管理工具-----Helm 超详细解读

在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制, 很大程度上简化了 Kubernetes 应用的部署和管理。Helm 本质就是让 K8s 的应用管理(Deployment、Service 等)可配置,可以通过类似于传递环境变量的方式能动态生成。

2024-06-13 16:46:04 1220

原创 【云原生】Kubernetes----RBAC用户资源权限

Kubernetes的安全机制主要围绕三个核心组件:认证、鉴权和准入控制。认证是安全机制的第一道防线,负责确认请求者的身份;鉴权则是根据用户的身份和权限策略,确定其是否有权执行特定操作;最后,准入控制对API资源对象的修改和校验进行把关。

2024-06-09 22:23:36 568

原创 k8s小型实验模拟

192.168.217.22 ng01 (主负载均衡器)192.168.217.44 ng02 (备负载均衡器)192.168.217.55 / 12.0.0.1 iptables (iptables 网关)12.0.0.12 客户端。

2024-06-07 17:24:05 1063

原创 k8s 对外服务之 Ingress(HTTPS/HTTP 代理访问 以及Nginx 进行 BasicAuth )

目录一 Ingress HTTP 代理访问虚拟主机(一)原理(二)实验1,准备2,创建虚拟主机1资源3,创建虚拟主机2资源4,创建ingress资源5,查看相关参数6,测试访问二 Ingress HTTPS 代理访问(一)理论(二) 实验1,准备2,创建ssl证书3,创建 secret 资源进行存储 3.1 创建Secret资源​编辑3.2 获取Secret资源信息3.3 查看Secret资源4, 创建 deployment、Service、Ingress Yaml 资源5, 查看配置6,真机做

2024-06-06 16:31:41 1248 1

原创 k8s 对外服务之 Ingress(七层代理)

它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。2,外部的应用能够访问集群内的服务 的方法●NodePort:将service暴露在节点网络上,NodePort背后就是Kube-Proxy,Kube-Proxy是沟通service网络、Pod网络和节点网络的桥梁。测试环境使用还行,当有几十上百的服务在集群中运行时,NodePort的端口管理就是个灾难。

2024-06-05 18:27:53 851 2

原创 【云原生】Kubernetes----配置资源管理Secrets与ConfigMaps

在Kubernetes(k8s)中,Secrets是一种用于存储敏感信息的对象,如密码、OAuth令牌、SSH密钥等。这些信息在部署应用程序时可能需要,但又不希望直接硬编码在应用程序的代码中或者公开暴露。通过使用Secrets,我们可以将敏感信息与应用程序代码解耦,从而提高安全性#创建用户名文件#创建密码文件ConfigMap 是 Kubernetes 中的一种资源对象,用于将非敏感的配置数据注入 Pod 或其他 Kubernetes 对象。

2024-06-04 20:07:28 818

原创 pod 控制器介绍

Pod控制器,又称之为工作负载(workload),是用于实现管理pod的中间层,确保pod资源符合预期的状态,pod的资源出现故障时,会尝试进行重启,当根据重启策略无效,则会重新新建pod的资源。定义:无状态应用是指不依赖于任何先前交互上下文或会话数据的应用程序。每个请求都被视为独立的,可以被任何实例处理,而不需要关心之前发生过什么。这类应用不保存客户端会话数据,也不依赖于应用上次运行时的状态。特点可伸缩性:易于横向扩展,可以简单地增加或减少实例数量而不会影响应用状态或导致数据一致性问题。

2024-06-03 00:31:08 802

原创 【云原生】Kubernetes----PersistentVolume(PV)与PersistentVolumeClaim(PVC)详解

存储卷是Kubernetes中的一个重要概念,它为容器提供了持久化存储或其他类型的存储的能力。Pod中的容器可以通过存储卷来访问文件系统,存储数据。存储卷的类型有很多,如等。这些存储卷类型都有其特定的用途和限制emptyDir是Kubernetes中一种最简单的存储卷类型,其生命周期与Pod相同。当Pod被分配给某个节点时,会为该Pod创建一个emptyDir卷,并且只要Pod在该节点上运行,卷就一直存在。一旦Pod被删除,emptyDir卷中的数据也会被永久删除定义。

2024-05-31 00:27:42 786

原创 【kubernetes】关于k8s集群的污点、容忍、驱逐以及k8s集群故障排查思路

节点亲和性,是Pod的一种属性(偏好或硬性要求),它使Pod被吸引到一类特定的节点。Taint 则相反,它使节点能够排斥一类特定的 Pod。Taint 和 Toleration 相互配合,可以用来避免 Pod 被分配到不合适的节点上。每个节点上都可以应用一个或多个 taint ,这表示对于那些不能容忍这些 taint 的 Pod,是不会被该节点接受的。如果将 toleration 应用于 Pod 上,则表示这些 Pod 可以(但不一定)被调度到具有匹配 taint 的节点上。

2024-05-29 16:07:49 859

原创 k8s群集调度之 pod亲和 node亲和 标签指定

如果 硬策略软策略都存在的同时,硬策略没有满足的条件则一直处于pending状态,不会转到软策略。

2024-05-29 00:07:10 930

原创 pod 之资源限制 与健康检查

PS:在买硬盘的时候,操作系统报的数量要比产品标出或商家号称的小一些,主要原因是标出的是以 MB、GB为单位的,1GB 就是1,000,000,000Byte,而操作系统是以2进制为处理单位的,因此检查硬盘容量时是以MiB、GiB为单位,1GiB=2^30=1,073,741,824,相比较而言,1GiB要比1GB多出1,073,741,824-1,000,000,000=73,741,824Byte,所以检测实际结果要比标出的少一些。当容器使用的资源达到或超过了这个限制,就会触发相应的资源限制措施。

2024-05-26 22:58:07 1027

原创 pod介绍之 容器分类与重启策略

Pod是kubernetes中最小的资源管理组件Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的,例如,用于管理Pod运行的StatefulSet和Deployment等控制器对象,用于暴露Pod应用的Service和Ingress对象,为Pod提供存储的PersistentVolume存储资源对象等。

2024-05-24 22:59:44 726

原创 金丝雀发布(灰度发布)介绍 及 声明式管理方法简介

更新完毕所有流向都会走向新的 svc旧的service最好不要删除,当新版本出现问题,需要回滚时,旧版的pod还是会关联在旧的service当中三声明式管理方法1, 基本介绍1.适合于对资源的修改操作2.声明式资源管理方法依赖于资源配置清单文件对资源进行管理资源配置清单文件有两种格式:yaml(人性化,易读),json(易于api接口解析)3.对资源的管理,是通过事先定义在统一资源配置清单内,再通过陈述式命令应用到k8s集群里。

2024-05-23 22:38:20 1166 2

原创 yaml文件格式详解 及 k8s实战演示

是 Kubernetes 中的一个状态,表明 Pod 内的容器反复启动后立即退出(崩溃),然后 Kubernetes 会按照重启策略(通常默认是重启)不断地尝试重新启动容器。targetPort 是 Pod 的端口,从 port 或 nodePort 来的流量经过 kube-proxy 反向代理负载均衡转发到后端 Pod 的 targetPort 上,最后进入容器。命令帮助用户了解其 Kubernetes 集群所支持的 API 资源及版本范围,是管理和操作集群时的一个有用的信息参考点。

2024-05-22 19:00:00 1274 1

原创 kubectl 命令详细介绍

kubectl exec可以跨主机登录容器,docker exec 只能在容器所在主机上登录命令作用查看版本信息查看资源对象简写node节点查看日志配置kubectl自动补全查看集群信息查看服务端点。

2024-05-21 21:01:44 942

原创 kubeadm 工具实验 k8s一键安装

​​​​​​​。

2024-05-20 20:19:32 723

原创 k8s 二进制安装 优化架构之 部署负载均衡,加入master02

仪表板是基于Web的Kubernetes用户界面。您可以使用仪表板将容器化应用程序部署到Kubernetes集群,对容器化应用程序进行故障排除,并管理集群本身及其伴随资源。您可以使用仪表板来概述群集上运行的应用程序,以及创建或修改单个Kubernetes资源(例如deployment,job,daemonset等)。例如,您可以使用部署向导扩展部署,启动滚动更新,重新启动Pod或部署新应用程序。仪表板还提供有关群集中Kubernetes资源状态以及可能发生的任何错误的信息。多master集群架构的部署过程。

2024-05-15 21:34:40 654

原创 k8s 二进制安装 详细安装步骤

etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd是go语言编写的。关闭防火墙 关闭selinux 关闭swap 根据规划设置主机名做域名映射 调整内核参数 时间同步。

2024-05-15 14:54:38 899

原创 k8s 网络组件详细 介绍

源主机 A 的 flanneld 服务将原本的数据内容封装到 UDP 报文中, 根据自己的路由表通过物理网卡投递给目的节点主机 B 的 flanneld 服务,数据到达以后被解包,然后直接进入目的节点的 flannel0 接口, 之后被转发到目的主机的 docker0/cni0 网桥,最后就像本机容器通信一样由 docker0/cni0 转发到目标容器。而Flannel作为具体的网络实现,通过VXLAN等技术解决了容器跨节点通信的问题,为容器提供了一个统一的虚拟网络环境。数据通信性能则大受影响。

2024-05-14 17:08:18 1257 2

原创 k8s 数据流向 与 核心概念详细介绍

上一章 对k8s理论做了一些说明,为了更透彻讲述k8s 的工作过程,本章将详细阐述 k8s 的数据流向 与 核心概念供君参考。

2024-05-12 19:46:33 1182

原创 k8s 理论知识基本介绍

蓝绿部署/金丝雀发布蓝绿部署:维护两个相同的生产环境(蓝环境和绿环境)。新版本首先部署到非活跃环境(比如蓝环境),完成部署并验证无误后,通过切换路由或负载均衡器配置,将流量从旧环境(绿环境)无缝转移到新环境。金丝雀发布:逐步将新版本部署到一部分用户或服务器上,监控性能和错误率。如果一切正常,逐渐扩大新版本的覆盖范围,直至完全替换旧版本。云原生(Cloud Native)是一种构建和运行应用程序的方法论和一整套技术实践,旨在充分利用云计算的优势,如弹性伸缩、分布式处理能力以及自动化管理等。

2024-05-09 17:22:33 3290

原创 ansible 深入介绍之 主机清单与playbook

webservers] # 组名 自己设置192.168.10.14:2222 #冒号后定义远程连接端口,默认是 ssh 的 22 端口这样的写法可以让Ansible能够便捷地管理一个IP地址段内的多台主机,而无需逐一列出它们db-[a:f].example.org #支持匹配 a~f是一个主机组的名称,表示属于这个组的所有主机都是数据库服务器将会匹配所有主机名形如, ...,

2024-05-08 17:21:21 1312

原创 运维自动化之 ansible

Ansible是一个基于Python开发的配置管理和应用部署工具,现在也在自动化管理领域大放异彩。它融合了众多老牌运维工具的优点,Pubbet和Saltstack能实现的功能,Ansible基本上都可以实现。在远程主机执行命令,不支持管道,重定向等shell的特性ansibe 机制ansible:核心组件 核心程序hostInventory:记录由ansible管理的主机信息(包括端口、IP、密码等)playbook:"剧本"

2024-05-07 00:04:43 855

原创 Docker--harbor私有仓库部署与管理

Docker私有仓库是一种用于存储和分发Docker镜像的服务器服务,它允许组织在其内部网络中托管自己的Docker镜像集合,而不是依赖于公共的Docker镜像仓库,如Docker Hub2,Harbor 是 VMware 公司开源的企业级 Docker Registry 项目,其目标是帮助用户迅速搭建一个企业级的 Docker Registry 服务。

2024-05-06 19:44:26 982

原创 Docker consul的容器服务更新与发现

服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现了多个节点的分布式架构,起初的解决手段是在服务前端负载均衡,这样前端必须要知道所有后端服务的网络位置,并配置在配置文件中。这里就会有几个问题:●如果需要调用后端服务A-N,就需要配置N个服务的网络位置,配置很麻烦●后端服务的网络位置变化,都需要改变每个调用者的配置consul是google开源的一个使用go语言开发的服务管理软件。

2024-05-05 23:13:52 1112 1

原创 docker: 如何不新建容器 修改运行容器的端口

1,查看 目前正在运行的容器 宿主机1216 端口 映射 容器端口80。4, 去到 hostconfig.json 所在位置。6, 重启docker 启动容器 端口已改。了,但是还需要这个容器,怎么办?5, 修改 hostconfig.json。3, 找到对应 路径。

2024-04-30 10:02:44 302

原创 Docker-compose 简单介绍

Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(containerDocker-Compose运行目录下的所有文件(docker-compose.yml,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像、参数、依赖。一个服务当中可包括多个容器实例,Docker-Compose并没有解决负载均衡的问题,因此。

2024-04-29 18:41:30 1020 1

原创 dockerfile 搭建lamp 实验模拟

一 实验目的二 实验环境1, 实验环境192.168.217.88一台机器安装docker 并做mysql nginx php 三台容器2,大致框架3,phpphp:Nginx服务器不能处理动态页面,需要由 Nginx 把动态请求交给 php-fpm 进程进行解析php有三个配置文件:php.ini 主配置文件 php-fpm.conf 进程服务配置文件www.conf

2024-04-28 17:48:44 1041

原创 Docker 镜像的创建

DDockerfile是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。Dockerfile是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。

2024-04-28 02:02:07 1338 1

原创 docker 数据管理 与容器互联

数据卷类似挂载数据卷容器 类似文件共享容器互联 让每个有独立空间的容器 也可以互相看到。

2024-04-25 18:30:19 578

原创 cgroup 资源控制介绍

cgroups,是一个非常强大的linux内核工具,他不仅可以限制被 namespace 隔离起来的资源, 还可以为资源设置权重、计算使用量、操控进程启停等等。所以 cgroups(Control groups)实现了对资源的配额和度量。Cgroup(Control Groups)是一个Linux内核的特性,通过内核来限制记录和隔离进程组的系统资源使用(CPU/内存/磁盘I/O等)

2024-04-25 17:17:38 1431

原创 docker 网络简介

●Host:容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。●Container:创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围。●None:该模式关闭了容器的网络功能。●Bridge:默认为该模式,此模式会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及iptables nat 表配置与宿主机通信。●自定义网络。

2024-04-24 17:28:19 1227 4

原创 docker 安装及 基础使用方法

Docker Search 仓库名/镜像名Docker pull 仓库名/镜像名:标签Docker push 仓库用户名/镜像名:标签Docker images:查看镜像Docker tag 源仓库名 /源镜像名:标签 新仓库名/新镜像名:标签Docker rmi 仓库名/镜像名:标签:删除镜像Docker save -o xxx.tar 仓库名/镜像名:标签 导出Docker load -i xxx.tar 导入Docker < 重定向。

2024-04-23 23:06:35 1178

原创 虚拟化技术 与容器 的基本介绍

Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker的Logo设计为蓝色鲸鱼,拖着许多集装箱。鲸鱼可看作为宿主机,集装箱可理解为相互隔离的容器,每个集装箱中都包含自己的应用程序。

2024-04-23 16:28:30 699

原创 zabbix 高级使用

案列:自定义监控客户端服务器登录的人数需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息1.创建模板点击左边菜单栏【配置】中的【模板】,点击【创建模板】【模板名称】设置成 Template Login User【可见的名称】设置成 Template Login User【群组】选择 Template【描述】可自定义点击 【添加】,此时就可在【链接的模板】中搜索到 Template Login User 了2.创建应用集(用于管理监控项的)

2024-04-22 11:12:02 955

原创 小型架构实验模拟

解决方法:找到主进程 kill-9 93968。

2024-04-21 23:15:54 1031

原创 zabbix 简单介绍 及部署

zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案zabbix 由 2 部分构成,zabbix server 与可选组件 zabbix agent。通过 C/S 模式采集数据,通过 B/S 模式在 Web 端展示和配置。(B/S 网页端和服务端 网页端显示服务端所有的监控数据 就是客户端采集数据 交给服务端 网页端再显示服务端的信息)

2024-04-16 16:31:31 1087

原创 Kafka 架构深入介绍 及搭建Filebeat+Kafka+ELK

1,Kafka 中消息是以 topic 进行分类的,生产者生产消息,消费者消费消息,都是面向 topic 的。2,topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应于一个 log 文件,该 log 文件中存储的就是 producer 生产的数据。Producer 生产的数据会被不断追加到该 log 文件末端,且每条数据都有自己的 offset。消费者组中的每个消费者,都会实时记录自己消费到了哪个 offset,以便出错恢复时,从上次的位置继续消费。

2024-04-15 00:56:54 1157

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除