自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

琦彦

Find out who you are,and be that person.

  • 博客(971)
  • 资源 (13)
  • 收藏
  • 关注

原创 K8S原理剖析:安全原理剖析和实践

大纲认证与鉴权 准入控制 Service Account Secret认证与鉴权API Server架构Kubernetes的安全框架访问K8S集群的资源需要过三关:认证、鉴权、准入控制。普通用户若要安全访问集群API Server,往往需要证书、 token、用户名-密码; Pod访问,需要ServiceAccount K8S安全控制框架主要由下面3...

2020-01-04 20:58:47 1872 1

原创 K8S原理剖析:Service原理剖析和实践

大纲Kubernetes的Service机制 Iptables实现Service负载均衡 当前Iptables实现存在的问题 IPVS实现Service负载均衡 Iptables VS. IPVSKubernetes的Service机制但,简单的生活总是暂时的:- 多个后端实例,如何做到负载均衡? - 如何保持会话亲和性? - 容器迁移, IP发生变化如何访问?...

2020-01-03 18:08:45 2440

原创 K8S原理剖析:网络模型原理剖析和实践

大纲网络模型与CNI Service Ingress DNS Network Policy网络模型与CNI一个Pod一个IP- 每个Pod独立IP, Pod内所有容器共享网络namespace(同一个IP) - 容器之间直接通信,不需要NAT - Node和容器直接通信,不需要NAT - 其他容器和容器自身看到的IP是一样的集群内访问走Service,集群外访...

2020-01-01 18:39:35 2015

原创 K8S原理剖析:调度器原理剖析和实践

大纲K8S调度机制介绍 K8S中的调度策略与算法 K8S高级调度特性详解K8S调度机制介绍Scheduler:为Pod找到一个合适的NodeKubernetes的Default scheduler从外部流程看调度器调度器的内部流程通过NodeLister获取所有节点信息; 整合scheduled pods和assume pods,合并到p...

2020-01-01 18:15:14 3497

原创 K8S原理剖析:工作负载原理剖析和实践

Kubernetes的魔法Kubernetes是容器化应用程序模式的平台。这些模式使应用程序更易于部署,管理,扩展和从故障中恢复 - 这是”魔法”。大纲• 无状态模式• 有状态模式• 守护进程模式• 批处理模式无状态模式不必为你的应用保持状态/持久化数据• 典型应用代表: Nginx, Tomcat• Replication Controller• ...

2020-01-01 17:02:17 2277

原创 K8S原理剖析:Pod、工作负载与服务

大 纲Kubernetes Pod详解 Kubernetes工作负载与服务介绍Kubernetes Pod详解Kubernets概览Kubernets概览Kubernetes关键概念-PodKubernetes关键概念-Pod在Kubernetes中, pods是能够创建、调度、和管理的最小部署单元,是一组容器的集合,而不是单独的应用容器 同一个Pod里的...

2019-12-29 22:12:56 9027

原创 K8S原理剖析:云原生技术的前世今生

大纲CNCF云原生介绍 容器技术发展介绍 Kubernetes技术架构CNCF云原生介绍CNCF ToC: CNCF Cloud Native Definition v1.0云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、 服务网格、 微服务、不可变基础设施和声明式API。这些技术能够构建容错...

2019-12-29 21:14:49 2215

原创 RateLimiter:限流N个请求,但允许通过了N+个请求

问题描述接口:getUrlDic我设置了限流5个,但是在第一秒的请求了,实际允许通过了9个(或10个),之后正常 RateLimiter使用方式参考:https://blog.csdn.net/fly910905/article/details/103644950标题问题分析RateLimiter内部有个实现:SmoothBurstySmoothBursty...

2019-12-22 14:05:59 1651

原创 CKA真题 :2019年12月英文原题和分值

所有命令都验证过,有更好的方式,欢迎留言~~~CKA习题和真题汇总 CKA考试经验:报考和考纲 CKA :2019年12月英文原题和分值 CKA考试习题:K8S基础概念--API 对象 CKA考试习题:调度管理-nodeAffinity、podAffinity、Taints CKA考试习题:K8S日志、监控与应用管理 CKA考试习题:网络管理-Pod...

2019-12-22 12:20:54 23009

原创 RateLimiter:结合Spring Aop应用,以及SmoothBursty原理分析

RateLimiterRateLimiter使用的是一种叫令牌桶的流控算法,RateLimiter会按照一定的频率往桶里扔令牌,线程拿到令牌才能执行,比如你希望自己的应用程序QPS不要超过1000,那么RateLimiter设置1000的速率后,就会每秒往桶里扔1000个令牌。令牌桶算法令牌桶算法概念如下:令牌以固定速率生成; 生成的令牌放入令牌桶中存放,如果令牌桶满了则多余...

2019-12-21 16:22:14 1447 2

原创 Vim:全局替换、相同的选中

vim 全局替换%s/源字符串/目的字符串/gvim 相同的选中"g + d" :高亮显示所有相同的单词shift + "*" :向下查找相同单词并高亮显示shift + "#" :向上查找相同单词并高亮显示命令行模式下输出:“noh” 命令取消高亮显示...

2019-12-20 11:26:22 4250

原创 CKA考试习题:K8S日志、监控与应用管理

所有命令都验证过,有更好的方式,欢迎留言~~~CKA习题和真题汇总 CKA考试经验:报考和考纲 CKA :2019年12月英文原题和分值 CKA考试习题:K8S基础概念--API 对象 CKA考试习题:调度管理-nodeAffinity、podAffinity、Taints CKA考试习题:K8S日志、监控与应用管理 CKA考试习题:网络管理-Pod网络、...

2019-12-15 21:23:34 12746

原创 Kubernetes:etcdctl3的常用命令

etcdctl的v3版本与v2版本使用命令有所不同,本文介绍etcdctl v3版本的命令工具的使用方式。1. etcdctl的安装etcdctl的二进制文件可以在 github.com/coreos/etcd/releases 选择对应的版本下载,例如可以执行以下install_etcdctl.sh的脚本,修改其中的版本信息。#!/bin/bashETCD_VER=v3.3.4ET...

2019-12-15 01:52:04 5642 3

原创 Tmux  : 5分钟掌握使用,运维效率蹭蹭涨

什么是 Tmuxtmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理。应付绝大多数窗口管理的需求。Tmux安装首先进行安装:brew install tmux # OSXpacman -S tmux # archlinuxapt-get install tmux # Ubuntuyum install tmux...

2019-12-12 19:02:32 999

转载 Kubernetes:排错指南 - Pod

本文档介绍 Pod 的异常状态,可能原因和解决办法。排查 Pod 异常的常用命令如下:查看 Pod 状态:kubectl get pods <pod-name> -n <namespace> -o wide查看 Pod 的 yaml 配置:kubectl get pods <pod-name> -n <namespace> -o yaml查...

2019-12-12 11:41:08 3466

翻译 小技巧: 通过cert-rotate将新节点添加到K8S集群

使用此技术将节点添加到群集中而不提供任何证书此处的设置是通过Kelsey Hightower的Kubernetes the Hard Way创建的。因此,如果您按照此步骤进行操作,请进行所有设置,直到执行Bootstrapping Kubernetes Worker Nodes步骤。在这种情况下,请不要启动kubelet,而是启动其他服务containerd 和kube-proxy主节点按...

2019-12-09 22:00:15 1638

翻译 小技巧: 使用BOOTSTRAP Token将新节点添加到K8S集群

使用此技术,可在不提供任何证书且无需重新启动KUBE-APISERVER的情况下,将新节点添加到集群中几天前,我写了一篇博客,内容涉及使用静态令牌文件将新节点添加到群集中。这种方法的问题在于,您需要重新启动kube-apiserver,提供令牌文件的路径。在这里,我们将看到如何使用 bootstrap token ,该令牌本质上是动态的,可以通过使用Kubernetes资源(如secrets)...

2019-12-09 21:44:43 2384

原创 kubernetes-client/java:Scale报错400 BadRequest 或 500 cannot unmarshal object

问题现象使用kubernetes-client/java 对 Deployment、ReplicaSet或者StatefulSet 进行Scale(手动扩缩容),修改实例数客户端版本<!--k8s--><dependency> <groupId>io.kubernetes</groupId> <artifa...

2019-12-07 10:19:49 2794 6

转载 kubeadm搭建Kubernetes(K8s)1.15.3单主集群

本文基于原文有所改动和完善,作者使用的VMware-workstation-full-15.1.0-13591040.exe CentOS-7-x86_64-Minimal-1804.iso kernel-ml-4.18.16-1.el7.elrepo.x86_64.rpm本文目录前言一、环境准备1、关闭图形界面2、配置yum源3、关闭防火墙4、关闭SeLi...

2019-12-02 09:32:14 1410

原创 Kubernetes格式化输出:custom-columns

Kubernetes资源内容查询:JSONPathCustom columnsTo define custom columns and output only the details that you want into a table, you can use thecustom-columnsoption. You can choose to define the custo...

2019-12-02 08:54:52 3921

转载 CentOS7 更新最新内核 | RPM直接安装内核

CentOS7 更新最新内核内核下载地址:https://elrepo.org/linux/kernel/el7/x86_64/RPMS/内核选择kernel-lt(lt=long-term)长期有效kernel-ml(ml=mainline)主流版本安装过程1.下载内核wget https://elrepo.org/linux/kernel/el7/x86_...

2019-12-01 18:42:28 6080

原创 VMware15.0.1:重启后黑屏没反应

在VMware中装了虚拟机,但是在启动后一直处于黑屏而无法进入系统,也没有报错提示,出现这种问题的主要原因是VMware软件跟本地网路规范有所冲突,解决办法也简单,重置一下网络规范就好了,具体的操作方法如下:方法1:以管理员身份运行cmd控制台程序命令行窗口—输入 netsh winsock reset,然后重启计算机。方法2:VM->Settings->H...

2019-12-01 18:36:12 1411

原创 kubectl命令补全出错:kubectl ge-bash: _get_comp_words_by_ref: command not found

安装kubernets后,使用source <(kubectl completion bash)报错kubectl ge-bash: _get_comp_words_by_ref: command not found解决办法:# yum install -y bash-completion# source /usr/share/bash-completion/bash_c...

2019-12-01 10:23:52 4863

原创 Linux基础:systemctl和journalctl常用命令

systemctl 介绍Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。重要:Systemctl接受服务(.service),挂载点(.mount),套接字(.socket)和设备(.device)作为单位。systemctl 常用 命令Systemd的版本systemd --versionsystemd和systemctl的二...

2019-11-24 12:28:00 4614

原创 小技巧: Kubernetes资源内容查询:JSONPath

JSONPath在k8s中使用JSONPath 模板由 {} 包起来的 JSONPath 表达式组成。 除了原始的 JSONPath 语法之外,我们还添加了三个函数:$运算符是可选的,因为表达式默认情况下始终从根对象开始。 可以使用""来引用 JSONPath 表达式中的文本。 可以使用range运算符来遍历列表。 可以使用负切片索引来反向遍历列表。负索引并不会遍历完列表...

2019-11-23 23:18:27 3474 2

原创 CKA真题:题目和解析-4

所有命令都验证过,有更好的方式,欢迎留言~~~CKA习题和真题汇总 CKA考试经验:报考和考纲 CKA :2019年12月英文原题和分值 CKA考试习题:K8S基础概念--API 对象 CKA考试习题:调度管理-nodeAffinity、podAffinity、Taints CKA考试习题:K8S日志、监控与应用管理 CKA考试习题:网络管理-Pod网络、...

2019-11-21 08:46:36 15263 3

原创 CKA考试经验:报考和考纲

所有命令都验证过,有更好的方式,欢迎留言~~~CKA习题和真题汇总 CKA考试经验:报考和考纲 CKA :2019年12月英文原题和分值 CKA考试习题:K8S基础概念--API 对象 CKA考试习题:调度管理-nodeAffinity、podAffinity、Taints CKA考试习题:K8S日志、监控与应用管理 CKA考试习题:网络管理-Pod网络、...

2019-11-19 14:57:01 22711 7

原创 小技巧: kubernetes-client: delete操作异常 Expected a string but was BEGIN_OBJECT at line 1 column 1912

问题现象--> DELETE https://x.x.x.x:6443/api/v1/namespaces/default/pods/test-pod?gracePeriodSeconds=0 HTTP/1.1Accept: application/jsonUser-Agent: Swagger-Codegen/1.0-SNAPSHOT/java--> END DELET...

2019-11-16 18:38:34 1959

原创 kubernetes: CPU 和内存单位解释、metric-server接口调用

当您定义Pod的时候可以选择为每个容器指定需要的 CPU 和内存(RAM)大小。Pod 中的每个容器都可以指定以下的一个或者多个值:spec.containers[].resources.limits.cpu spec.containers[].resources.limits.memory spec.containers[].resources.requests.cpu sp...

2019-11-06 11:53:47 17747 1

原创 kubenetes: patch更新和替换、删除资源内容

使用(patch)补丁修改、更新资源的字段。支持JSON和YAML格式。kubectl命令操作k8s版本1.13替换容器的镜像kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path": "/spec/containers/0/image", "value":"new image"}]...

2019-10-28 09:30:40 10826 8

原创 Kubernetes:默认调度器的优先级与Pod 抢占机制

在本篇文章中,讲解一下 Kubernetes 调度器里的另一个重要机制,即:优先级(Priority )和抢占(Preemption)机制。首先需要明确的是,优先级和抢占机制,解决的是 Pod 调度失败时该怎么办的问题。正常情况下,当一个 Pod 调度失败后,它就会被暂时“搁置”起来,直到 Pod 被更新,或者集群状态发生变化,调度器才会对这个 Pod 进行重新调度。但在有时候,我们希...

2019-10-27 11:43:58 1219 2

转载 BeanUtils——JavaBean相互转换及字典翻译

JavaBean相互转换在升级公司架构过程中,发现有大量Entity与DTO相互转换的问题,并且其中还伴随DTO中的数据字典翻译,所以特意写个工具类,主要利用spring提供的BeanUtils工具类,用redis翻译字典其中功能包括: 翻译JavaBean中带有@CacheFormat的属性 /** * 翻译当前类中需要翻译的字典值 * * @param ...

2019-10-27 10:04:41 783

原创 Kubernetes笔记:深入kubernetes---日志和监控( Prometheus、Helm、PrometheusOperator、Grafana)

PrometheusPrometheus架构和原理Prometheus起源与Kubernetes同源 2016.5加入CNCF 2018.8从CNCF毕业Prometheus是什么一系列服务的组合 系统和服务的监控报警平台Prometheus特征由metric名称和kv标识的多维数据模型 灵活的查询语言(PromQL) 支持pull、push两种方式...

2019-10-18 08:53:44 767

原创 Kubernetes笔记:深入kubernete---日志和监控

本章中将介绍K8S使用者必须考虑的重量级问题:日志与监控。课程中会分析当下主流的日志处理方案并选择一种方案进行日志从采集到展示的完整实践;会讲解主流k8s监控方案prometheus,包括它的实现原理,支持的各种指标等。常见日志采集问题和解决方案分析传统服务VSk8s中的服务传统服务VSk8s中的服务k8s的日志k8s的日志k8s的日志处理方案远端...

2019-10-16 10:26:35 1774

原创 kubernetes:字段选择器(field-selector)标签选择器(labels-selector)和筛选 Kubernetes 资源

字段选择器(field-selector)字段选择器允许您根据一个或多个资源字段的值筛选 Kubernetes 资源。 下面是一些使用字段选择器查询的例子:metadata.name=my-service metadata.namespace!=default status.phase=Pending下面这个kubectl命令将筛选出status.phase字段值为Run...

2019-10-15 19:18:25 17934

原创 Dockerfile : 常用指令

镜像的定制镜像是多层存储,每一层是在前一层的基础上进行的修改;而容器同样也是多层存储,是在以镜像为基础层,在其基础上加一层作为容器运行时的存储层。镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么曾经遇到的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Docke...

2019-10-12 08:52:08 1195

原创 Kubernetes参数:dryRun理解

声明式(Declarative)配置管理,也称为配置即代码(configuration-as-code),是Kubernetes的关键优势之一。它允许用户提交所需的集群状态,并跟踪不同的版本,通过CI/CD管道改进审计和自动化。Kubernetes 1.13将服务器端干运行(server-side dry-run)和kubectl diff升级到beta。这两个特性是Kubernetes...

2019-10-10 10:50:30 21633 12

原创 Java:从文本中随机提取不重复的某几行

实现步骤【第一步】 读取文本每行,转换为List集合 【第二步】 根据提取数量,随机选取不重复的几行数据 【第三步】 提取结果代码实现/** * @Title: 提取文本 * @MethodName: abstractTxt * @param txt * @param abstractNum * @Return void ...

2019-10-10 08:25:56 1212

原创 Kubernetes资源对象:CustomResourceDefinition

CustomResourceDefinitionCustomResourceDefinition(CRD)是 无需改变代码就可以扩展 Kubernetes API 的机制,用来管理自定义对象。CustomResourceDefinition demoapiVersion: apiextensions.k8s.io/v1beta1kind: CustomResourceDefini...

2019-10-04 20:51:09 1821

原创 Kubernetes资源对象:StatefulSet

StatefulSet StatefulSet 应用场景StatefulSet 是为了解决有状态服务的问题(对应 Deployments 和 ReplicaSets 是为无状态服务而设计),其应用场景包括稳定的持久化存储,即 Pod 重新调度后还是能访问到相同的持久化数据,基于 PVC 来实现 稳定的网络标志,即 Pod 重新调度后其 PodName 和 HostName 不变,基于...

2019-10-04 20:28:34 1003

XXX产品软件概要设计书.doc

XXX产品软件概要设计书

2021-09-13

华为软件概要设计模板.doc

华为软件概要设计模板

2021-09-13

MySQL:使用mysqldump在Windows数据库定时备份

MySQL:使用mysqldump在Windows数据库定时备份-- mysqldump --opt --single-transaction=TRUE --user=%user% --password=%password% --host=%host% --protocol=tcp --port=%port% --default-character-set=%charSet% --routines --events %dbName% > %backupPath%\%backupFileName%ry-cloud_%dateTime%.sql

2020-12-11

nssm-2.24-103.zip

NSSM:封装exe和cmd为Windows系统服务 NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。

2020-12-11

Linux--Java环境搭建(Jdk8、MySQL5.7、Redis3.2)

Linux-JAVA环境搭建实施手册,包含Jdk8安装、MySQL5.7安装、Redis3.2安装,已经服务器硬件环境和网络环境说明

2019-04-20

idea :插件Statistic 统计代码数量和行数

显示项目统计数量。 这个插件显示的是按扩展名排序的文件,以及大小、行数、LOC等。 用户可以选择统计(Project/Module/Package/File)范围,选择范围后需要点击Refresh,。 (这个插件需要Java1.8)

2018-12-21

luke-6.6.0

Luke:用于Lucene / Solr / Elasticsearch索引的GUI工具;具体参考:https://blog.csdn.net/fly910905/article/details/81190382

2018-07-24

增量打包工具 patch-generator-desk-v2.0.0

项目增量打包神器:全自动web增量打包发版,支持git/svn,支持多模块项目

2018-06-06

grafana-4.6.2.linux-x64.tar.gz

Prometheus自带的图表是非常基础的,只能用来临时查看一下数据。如果要构建强大的Dashboard,还是需要更加专业的工具才行。这个工具就是Grafana

2017-11-23

prometheus-2.0.0.linux-amd64.tar.gz

Prometheus 属于一站式监控告警平台,依赖少,功能齐全

2017-11-23

毕向东_Java基础源代码Codes

毕向东老师的java源码,对java学习很有帮助

2015-08-04

空空如也

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

TA关注的人

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