自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 k8s去掉managedFields的简洁编排文件

下载yq,使用yq截取我们需要的编排文件点击下载yq下载yq后,拷贝到/usr/local/bin下,例如cp yq_linux_amd64 /usr/local/bin/yq && chmod +x /usr/local/bin/yq将下面内容添加到~/.bashrcneat () { yq eval 'del( .metadata.managedFields,...

2022-08-18 17:57:03 803

原创 k8s kubernetes批量操作服务shell

主要为集群管理时,希望批量停止服务和恢复服务。在多集群时(多中心,例如主备中心),例如集群A中服务a有3个副本,集群B中服务a有2个副本,当集群A停止时,集群B的服务a可以快速扩容到5个副本,集群A恢复时,集群B的服务a可以恢复到2个副本。保存服务和副本数到centerData文件#!/bin/bash# 当前中心服务副本情况,将要保存到文件currentFile="centerData...

2022-08-18 16:34:39 385

原创 kubernetes的webhook开发(一篇搭好开发架构)

webhook对kubernetes的webhook开发实例介绍Webhook就是一种HTTP回调,用于在某种情况下执行某些动作,Webhook不是K8S独有的,很多场景下都可以进行Webhook,比如在提交完代码后调用一个Webhook自动构建docker镜像K8S中提供了自定义资源类型和自定义控制器来扩展功能,还提供了动态准入控制,其实就是通过Webhook来实现准入控制,分为两种:验...

2022-08-02 16:06:25 855

原创 intrface实现分析

前言关于interface接口(interface)代表一种“约定”或“协议”,是多个方法声明的集合。允许在非显示关联情况下,组合并调用其它类型的方法。接口无需依赖类型,带来的优点就是减少调用者可视化方法,隐藏类型内部结构和具体方法实现细节。虽然接口的优点有很多,但是接口的实现是在运行期实现的,所以存在其它额外的开销。在日常开发过程中是否选择接口需要根据场景进行合理的选择。关于k8s源...

2019-12-04 17:56:05 396

原创 kubelet源码详解(一)

kubelet前言本文没有去列出细节逻辑实现,只列出主干逻辑,代码中有注解可以简单阅读以下,k8s源码大多方法以interface层层包装的形式调用,一个interface会有较多实现(interface多态),代码中的interface的具体实现可以参考《intrface实现分析》,后续会就一处调用进行详细分析如何debug我是利用dlv工具远程调试的,远端搭建了一个3maste...

2019-12-03 17:08:14 954

原创 glusterfs架构详解

Gluserfs详解doc home:https://docs.gluster.org/en/latest/Quick-Start-Guide/Architecture/⚠️本文主要对官网进行了翻译,更方便记录查看,解释有误的地方请大家指出,架构整理和源码详解会在之后相继发布文章。FUSEGlusterFS is a userspace filesystem. This was ...

2019-11-28 11:00:16 978

原创 k8s高可用部署Ingress

部署高可用Ingress官网地址https://kubernetes.github.io/ingress-nginx/deploy/获取ingress的编排文件wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml增加节点标签kubec...

2019-11-18 16:07:12 471

原创 gluster Issues: Readiness probe failed or Liveness probe failed

问题描述:glusterfs的Pod启动失败如下(实际为gluster-blockd启动失败)log查看gluster需要的几个状态:systemctl status gluster-blockdMar 21 08:37:42 k8s-worker03 systemd[1]: Dependency failed for Gluster block stor...

2019-10-22 11:34:19 1158

原创 kubernetes部署jenkins(Docker in Docker)及认证

引言Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。本文将Jenkins的master与slave置于Pod中,部署在namespace:jenkins下,jenkins slave 构建时,启动slave运行代码克隆,项目构建,镜像构建,上传仓库等一系列命令。构成完成以后删除pod。也就是Docker In Docker可直接使用本文提供的编...

2019-09-17 10:59:43 429

原创 helm生产环境离线安装

1.安装helm生产环境离线的情况下,使用tiller前端运行还是后端运行可以根据自己需求,如果希望tiller可以稳定的运行,可以尝试docker跑以下,作者没有尝试不知是否会成功。但是不通过helm init的方式搭建,这个需要访问网络。1.1.安装helm客户端各个版本的helm:https://github.com/helm/helm/releaseswget https...

2019-09-14 11:55:16 1734

原创 helm在kubernetes环境中搭建

1.安装helm1.1.安装helm客户端各个版本的helm:https://github.com/helm/helm/releaseswget https://get.helm.sh/helm-v2.14.3-linux-amd64.tar.gztar -zxvf helm-v2.14.3-linux-amd64.tar.gzmv linux-amd64/helm /usr...

2019-09-14 11:55:06 106

原创 GlusterFs卷类型分析及创建、使用(结合kubernetes集群分析)

引言本文通过对卷类型的分析对比,来帮助读者选取生产环境最符合服务的挂载存储,命令可结合《glusterfs详解及kubernetes 搭建heketi-glusterfs》进行实验,下面进入正题几种卷类型基础卷:布式卷(distribute)、条带卷(stripe)、复制卷(replica)、纠错卷(Dispersed ) 复合卷:分布式条带卷(distribute stripe)、...

2019-08-29 11:52:12 590

原创 kubernetes 搭建heketi-glusterfs(自动创建存储卷)

本文包含:gluster各存储卷详解、创建及使用 gluster-kubernetes搭建glusterfs存储前言传统的运维中,往往需要管理员手动先在存储集群分配空间,然后才能挂载到应用中去。Kubernetes 的最新版中,dynamic provisioning 升级到了 beta ,并支持多种存储服务的动态预配置,从而可以更有效地利用存储环境中的存储容量,达到按需使用存储空间的...

2019-08-28 18:45:43 887

原创 kubernetes haproxy+keepalive实现master集群高可用

前言master的HA,实际是apiserver的HA。Master的其他组件controller-manager、scheduler都是可以通过etcd做选举(--leader-elect),而APIServer设计的就是可扩展性,所以做到APIServer很容易,只要前面加一个负载均衡轮训转发请求即可。下面简单描述下haproxy和keepalive。注意⚠️便于大家使用,...

2019-08-21 16:00:18 435

原创 kubernetes部署高可用Harbor

前言本文Harbor高可用依照Harbor官网部署,主要思路如下,大家可以根据具体情况选择搭建。部署Postgresql高可用集群。(本文选用Stolon进行管理,请查看文章《kubernetes下Stolon部署高可用Postgresql》)部署redis高可用集群。(本文选用Helm对redis进行高可用部署,请查看文章《kubernetes部署高可用redis》,该文...

2019-08-20 11:34:27 198

原创 kubernetes部署高可用redis

本文redis通过helm搭建,提供redis高可用完整的编排,关于Helm的搭建和使用请查看文章《helm的搭建及使用》,其中前一章介绍了Helm搭建,并提供了Helm搭建Harbor的例子,所以本意仅做简要叙述可根据https://github.com/bitnami/charts/tree/master/upstreamed/redis使用helm在线安装或下载到本地安...

2019-08-20 11:32:04 287

原创 kubernetes Stolon部署高可用Postgresql

....前言本文选用Stolon的方式搭建Postgresql高可用方案,主要为Harbor提供高可用数据库,Harbor搭建可查看kubernetes搭建Harbor无坑及Harbor仓库同步,之后会提供redis高可用及Harbor高可用方案搭建方案比较几种postgresql高可用方案简单比较:引用https://studygolang.com/articles/1...

2019-08-19 18:11:39 551 1

原创 【原创】生产环境:ansible自动化部署kubernetes-1.14

概述:本文提供ansible-playbooks及相关所有k8s组件资源用来帮助读者用ansible构建二进制kubernetes1.14,调试有问题的伙伴可以私聊作者哈。集群包含calico、nginx-ingress、HA提供资源有kubernetes-1.14二进制安装包、docker18/rpm包、calico所需镜像、nginx-ingress所需镜像、cfssl包...

2019-08-13 15:34:39 256

原创 kubernetes搭建Harbor无坑及多中心Harbor仓库同步

harbor高可用可查看《kubernetes部署高可用Harbor》一、helm搭建harbor1.安装helm1.1.安装helm客户端tar -zxvf helm-v2.14.3-linux-amd64.tar.gzmv linux-amd64/helm /usr/local/bin/chmod +x /usr/local/bin/helmhelm versio...

2019-08-12 16:07:53 638

原创 生产环境:ansible自动化部署kubernetes-1.14

本文内容排版不是特别的好,所以又重新排了一版(新版),代码\命令用起来会更舒适一些 概述: 本文提供ansible-playbooks用来帮助读者用ansible构建二进制kubernetes1.14, 集群包含calico、nginx-ingress、HA 提供资源有kubernetes-1.14二进制安装包、dock...

2019-08-02 17:46:02 233

原创 kubernetes节点(node)为NotReady,集群表现随记

工作中曾碰到节点宕机的状况,导致以Pod部署的registery镜像仓库不可用,深入熟悉了Ceph后再详细续写解决办法,如有不对,请谅解。 由于网络原因或者节点自身原因导致node状态为NotReady时,Pod表现、处理方式及应注意事项。Deployment和StatefulSet的表现 1、Deployment的Pod状态为Unkown,会自动在其他节点重启Po...

2019-06-28 16:59:59 434

空空如也

空空如也

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

TA关注的人

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