自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CICD-Devops整合Kubernetes-4

因为希望使用ssh 用户名@k8s地址 kubectl apply -f /usr/local/k8s/pipeline.yml创建资源,会进行ssh免交互。因为yaml资源文件可以在k8s上创建应用pod,所以需要提前创建yaml,拉取到k8s服务器上在gitlab上新建YAML文件。把Jenkins中的公钥内容传递给k8s的master实现免密。修改:export MASTER_IP=10.1.8.103。**官网:**https://kuboard.cn/在master节点上进行初始化。

2025-08-14 18:59:11 660

原创 CICD-流水线管理-3

自由风格构建会从输出信息中看到整个构建流程,并且集中在一起,但是随着流程复杂度逐步增多,查看构建流程就会比较麻烦,因此就有了pipeline流水线构建通过Stage阶段划分使构建流程图形化展示,各环节耗时和状态一目了然,比自由风格的分散配置更易维护和版本控制。下面我们就按照原来构建项目的流程,使用pipeline流水线进行分阶段的管理构建,并且构建后钉钉会通知消息。从代码拉取、编译、测试、打包、部署到生产都可以在一个 Pipeline 中完成。:语法简洁、结构化、适合大多数团队。

2025-08-14 18:58:36 940

原创 CICD-DevOps进阶-2

官方插件下载地址:https://docs.sonarsource.com/sonarqube-server/latest/analyzing-source-code/scanners/sonarscanner/自动识别代码缺陷(如空指针异常)、安全漏洞(如SQL注入)和代码异味(不良设计),支持30+编程语言(Java、C#、Python等)。官方地址:https://www.sonarsource.com/products/sonarqube/downloads/目标服务器拉取harbor上的镜像。

2025-08-14 18:57:46 1181

原创 Kubernetes-核心概念Service

使用kubernetes集群运行工作负载时,由于Pod经常处于用后即焚状态,Pod经常被重新生成,因此Pod对应的IP地址也会经常变化,导致无法直接访问Pod提供的服务,Kuberetes中使用了Service来解决这一问题,即在Pod前面使用Service对Pod进行代理,无论Pod怎样变化,只要有Label,就可以让Service能够联系上Pod,把Pod lP地址添加到Service对应的端点列表(Endpoints)实现对Pod IP跟踪,进而实现通过Service访问Pod目的。

2025-08-11 16:39:32 763 2

原创 Kubernetes-Controller核心管理

*参考文档:**https://kubernetes.io/zh-cn/docs/tutorials/stateful-application/basic-stateful-set/参考文档:https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/statefulset/**官方文档:**https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/

2025-08-11 16:38:54 1131

原创 Kubernetes-Pod管理

对于Always这种策略,容器只要挂了,就会立即重启,这样是很耗费资源的。所以Always重启策略是这么做的:第一次容器挂了立即重启,如果再挂了就要延时10s重启,第三次挂了就等20s重启.依次类推。无论你的工作负载是单一服务还是多个一同工作的服务构成,在kubernetes中都可以使用pod来运行它。主容器启动后,有一个post start的操作(启动后的触发型操作,或者叫启动后钩子)在没有控制器管理的前提下可以直接删除,但是如果有控制器管理,控制器就会重新拉起pod。

2025-08-11 16:38:17 1026

原创 Kubernetes-核心概念

Label相当于我们熟悉的标签,给某个资源对象定义一个Label,就相当于给它打了一个标签,随后可以通过LabelSelector(标签选择器)查询和筛选拥有某些Label的资源对象,Kubernetes通过这种方式实现了类似SOL的简单又通用的对象查询机制。Label可以附加到各种资源对象上,例如Node、Pod、Service、RC等,一个资源对象可以定义任意数量的Label.同一个Labelt可以被添加到任意数量的资源对象上去,Label通常在资源对象定义时确定,也可以在对象创建后动态添加或者删除。

2025-08-11 16:37:42 1207

原创 Kubernetes管理

kubectl:客户端管理命令解决方法:只要把master上的管理文件/etc/kubernetes/admin.conf拷贝到node节点的$HOME/.kube/config就可以让node节点也可以实现kubectl命令管理kubernetes集群由大量节点组成,可将节点打上对应的标签,然后通过标签进行筛选及查看,更好的进行资源对象的相关选择与匹配。标签选择器精确匹配键值: app=nginx (匹配 app 值为 nginx 的资源)排除匹配: env!

2025-08-11 16:34:12 976

原创 Kubernetes 基础与环境部署

calico是一个纯三层的网络解决方案,为容器提供多node间的访问通信,calico将每一个node节点都当做为一个路由器(router),每个pod都是虚拟路由器下的的终端,各节点通过BGP(Border GatewayProtocol) 边界网关协议学习并在node节点生成路由规则,从而将不同node节点上的pod连接起来进行通信,是目前Kubernetes主流的网络方案。/etc/kubernetes/manifests/目录下存放Kubernetes集群中各个组件的Pod配置文件。

2025-08-05 17:05:06 892

原创 Redis集群与高可用

Redis 集群使用。

2025-08-03 17:40:19 755

原创 Redis基础与配置

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员,不同的是每个元素都会关联一个double(双精度浮点型)类型的分数,redis正是通过该分数来为集合中的成员进行从小到大的排序,有序集合的成员是唯一的,但分数(score)却可以重复,集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1),集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员),经常用于排行榜的场景。优点:RDB文件紧凑,体积小,网络传输快,适合全量复制;

2025-08-03 17:39:44 779

原创 Docker容器化企业级应用+镜像构建+registry管理

Dockerfile由一条一条的指令组成,并且有自己的书写格式和支持的命令。Harbor以 Docker 公司开源的 Registry 为基础,提供了图形管理 UI 、基于角色的访问控制(Role Based AccessControl) 、AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。镜像中心提供的镜像名称格式:swr.{区域代码}.myhuaweicloud.com/library/{镜像名称}:{镜像标签}# 定义配置文件的内容。

2025-07-28 17:27:02 657

原创 Docker容器技术-2(容器+数据卷+网络管理)

ip:hostPort:containerPort,将主机特定ip上的特定端口映射给容器特定端口。当使用-P(大写的)标记时,Docker会随机映射端口到容器内部开放的所有网络端口。hostPort:containerPort,将主机所有ip上的特定端口映射给容器。当容器的状态非running状态,总是尝试重启直到容器的状态为running。ip::containerPort,将主机特定ip上的所有端口映射给容器。containerPort,将主机所有ip上的随机端口映射给容器。代表要连接的容器的别名。

2025-07-28 17:19:10 548

原创 Docker容器技术-1(容器介绍+镜像管理)

很多编程语言都包含了命名空间的概念,可以认为命名空间是一种封装,封装本身实际上实现了代码的隔离。在操作系统中命名空间命名空间提供的是系统资源的隔离,其中系统资源包括了:进程、网络、文件系统实际上linux系统实现命名空间主要目的之一就是为了实现轻量级虚拟化服务,也就是我们说的容器,在同一个命名空间下的进程可以感知彼此的变化,而对其他命名空间的进程一无所知,这样就可以让容器中的进程产生一个错觉,仿佛它自己置身于一个独立的系统环境当中,以此达到独立和隔离的目的。

2025-07-27 16:59:05 885

原创 Ansible 自动化(项目管理)

role中的任何copy,script,template或者include任务都可以引用相关文件、模板、任务,而且可以不指定绝对路径或者相对路径,Ansible会在role的files,templates和tasks目录中查找。取而代之,您将为角色提供变量以对其进行配置,角色中维护的代码将确保应用您需要的SELinux配置。vars中变量具有较高的优先级,facts、include_vars 加载的变量、register变量和角色参数可以覆盖角色vars目录中定义的变量。

2025-07-24 19:58:30 960

原创 Ansible 自动化(实施任务控制)

例如,管理员可利用条件来区分不同的受管节点,并根据它们所符合的条件来分配功能角色。Files 模块库包含的模块允许您完成与Linux文件管理相关的大多数任务,如创建、复制、编辑和修改文件的权限和其他属性,下表列出了常用的Files模块库中使用的模块。您可以配置循环以利用列表中的各个项目、列表中各个文件的内容、生成的数字序列或更为复杂的结构来重复任务。红帽Ansible引擎本身内置附带了大型模块集合(模块库),为了便于整理、记录和管理这些模块,已根据文档中的功能以及在系统上安装的时间将它们分成多个组。

2025-07-24 19:52:29 989

原创 Ansible 自动化(变量管理)

这显然存在安全风险。Ansible随附的 Ansible Vault 可以加密任何由Ansible使用的结构化数据文件,包括清单变量、playbook中含有的变量文件、在执行playbook时作为参数传递的变量文件,以及Ansible角色中定义的变量。ansible 利用变量来存储数据,以便在Ansible项目文件中重复引用,有利于简化项目的创建和维护,降低出错率。,等效于 ansible_sudo_user 或 ansible_su_user,允许设置您通过权限升级成为的用户。,ssh 使用的私钥文件。

2025-07-24 19:27:44 808

原创 Ansible 自动化(基本配置与playbook)

通过Playbooks描述和配置IT基础架构。Ansible可以管理强大的自动化任务,适用于不同的生产环境。同时,Ansible对于新用户来说,也可以很快的上手运用到生产环境。

2025-07-16 19:33:03 795

原创 linux 常见服务器及配置

NFS(Network File System,网络文件系统)是一种基于 TCP/IP 协议的网络文件共享协议,允许不同操作系统的计算机(主要是类 Unix 系统,如 Linux、Solaris)通过网络共享文件和目录,让远程主机可以像访问本地文件一样访问共享资源。主要功能包括:读取配置文件、初始化服务、创建工作进程、接收外界信号(如重启、停止)并转发给工作进程、监控工作进程状态(若工作进程异常退出,会自动重启新的工作进程)。所有工作进程平等竞争客户端连接,通过共享内存实现进程间的配置信息同步。

2025-07-14 18:21:19 1023

原创 Python自动化运维

复数 complete:2+3j、2.8+(-3.14)字体选择 consolas 可区分标点符号大小写。字符串:‘123‘、“abc”、’“3.14”’浮点数 float:3.14、-2.11等。类的名称:首字母一般大写,比如Person。linux 使用 psutil 信息收集。类的属性:比如姓名,年龄,性别3。整型 int:2、-2、10等。元祖:不可以修改,只能查看。映射:字典,键值对,键唯一。类的方法:定义类所做的事。集合:无序,元素唯一。

2025-07-14 17:44:15 529

空空如也

空空如也

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

TA关注的人

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