自定义博客皮肤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)
  • 资源 (15)
  • 收藏
  • 关注

原创 mysql各种锁机制

生成间隙(gap)锁、临键(next-key)锁的前提条件 是在 RR 隔离级别下先给出结论:当Mysql的事务隔离级别是 REPEATABLE READ当使用唯一索引来等值查询的语句时, 如果这行数据存在,不产生间隙锁,而是记录锁。当使用唯一索引来等值查询的语句时, 如果这行数据不存在,会产生间隙锁。当使用唯一索引来范围查询的语句时,对于满足查询条件但不存在的数据产生间隙(gap)锁,如果查询存在的记录就会产生记录锁,加在一起就是临键锁(next-key)锁。当使用普通索引不管是锁住单条,还

2022-01-02 21:25:18 1019

原创 Shiro 并发登录控制

Shiro 并发登录控制并发登录人数控制在某些项目中可能会遇到如没买个账户同事有一个人登录或几个人同时登陆了,如果同时又多人登录;要么不让后者登录;要么踢出前者(强制退出).比如 spring secrity就直接提供了相应的功能;Shiro的话没有提供默认的实现,不过可以很容易的在Shiro中加入这个功能.示例代码基于《第十六章 综合实例》完成,通过 Shiro Filter 机制扩展 K...

2020-05-06 23:18:03 355

原创 Shiro RememberMe

Shiro RememberMeRememberMeShiro 提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下:首先在登录页面选中 RememberMe 然后登录成功;如果是浏览器登录,一般会把 RememberMe 的 Cookie 写到客户端并保存下来;关闭浏览器再重新打开;...

2020-05-06 23:17:29 181

原创 shiro学习-与Web集成

与Web集成shiro提供了与web集成的支持,其通过一个ShiroFilter入口来拦截需要安全控制的URL,然后进行相应的控制,ShiroFilter类似于如Strut2/SpringMVC这种web框架的前端控制器,其实安全控制的入口点,其负责读取配置(如ini配置文件),然后判断URL是否需要登录/权限等工作.准备环境1、创建 webapp 应用此处我们使用了 jetty-mave...

2020-05-06 23:16:56 159

原创 shiro学习-与Spring集成

shiro Spring集成与 Spring集成Shiro 的组件都是 JavaBean/POJO 式的组件,所以非常容易使用 Spring 进行组件管理,可以非常方便的从 ini 配置迁移到 Spring 进行管理,且支持 JavaSE 应用及 Web 应用的集成。在示例之前,需要导入 shiro-spring 及 spring-context 依赖,具体请参考 pom.xml。spri...

2020-05-06 23:16:12 135

原创 shiro学习-jsp标签

Shiro JSP标签JSP 标签Shiro 提供了 JSTL 标签用于在 JSP/GSP 页面进行权限控制,如根据登录用户显示相应的页面按钮。导入标签库<%@taglib prefix=“shiro” uri=“http://shiro.apache.org/tags” %>标签库定义在 shiro-web.jar 包下的 META-INF/shiro.tld 中定义。g...

2020-05-06 23:15:06 212

原创 Redis快速入门

Redis快速入门Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的web应用程序。Redis有如下三个主要特点。Redis将其数据库完全保存于内存中,仅适用磁盘进行持久化与其他键值数据存储相比,Redis有一组相对丰富的数据类型Redis可以将数据复制到任意数量的从机中。Redis的官网以下是Redis的一些优点:Redis非常快,每秒可执行...

2020-05-06 23:13:44 124

原创 k8s-简单集群部署安装

文章目录设置centos1的IPkube-proxy开启ipvs的前置条件安装 Docker 软件安装 Kubeadm (主从配置)初始化主节点查看错误日志:kubelet重启子节点load k8s 镜像脚本手动下载k8s镜像加入主节点以及其余工作节点部署网络:在master节点,join到主节点后,自动拥有flanner网络服务遇到的问题:1、安装 k8s 的节点必须是大于 1 核心的 CPU...

2020-05-06 22:31:07 947

原创 k8s-安装系统初始化

文章目录设置系统主机名以及 Host 文件的相互解析安装依赖包设置防火墙为 Iptables 并设置空规则关闭 SELINUX调整内核参数,对于 K8S调整系统时区关闭系统不需要服务设置 rsyslogd 和 systemd journald升级系统内核为 4.44设置系统主机名以及 Host 文件的相互解析hostnamectl set-hostname k8s-master01安装依赖...

2020-05-06 22:23:24 349

原创 k8s-资源管理器-DaemonSet 控制器 & JobCronJob 控制器

什么是 DaemonSetDaemonSet 确保全部(或者一些)Node 上运行一个 Pod 的副本。当有 Node 加入集群时,也会为他们新增一个 Pod 。当有 Node 从集群移除时,这些 Pod 也会被回收。删除 DaemonSet 将会删除它创建的所有 Pod使用 DaemonSet 的一些典型用法: 运行集群存储 daemon,例如在每个 Node 上运行 glu...

2020-05-06 22:19:54 183

原创 k8s-资源管理器-pod管理器

RS 与 RC 与 Deployment 关联RC (ReplicationController )主要的作用就是用来确保容器应用的副本数始终保持在用户定义的副本数 。即如果有容器异常退出,会自动创建新的Pod来替代;而如果异常多出来的容器也会自动回收Kubernetes 官方建议使用 RS(ReplicaSet ) 替代 RC (ReplicationController ) 进行部...

2020-05-06 22:18:23 372

原创 k8s-service 服务

Service 的概念Kubernetes  Service 定义了这样一种抽象:一个 Pod 的逻辑分组,一种可以访问它们的策略 —— 通常称为微服务。 这一组 Pod 能够被 Service 访问到,通常是通过 Label Selector[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yMkG3Ao1-1588579209092)(en-reso...

2020-05-04 16:00:26 286

原创 k8s-service Ingress

资料信息Ingress-Nginx github 地址:https://github.com/kubernetes/ingress-nginxIngress-Nginx 官方网站:https://kubernetes.github.io/ingress-nginx/[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KnvGDU9B-1588579173739)(e...

2020-05-04 15:59:59 141

原创 k8s-存储volume

文章目录背景卷的类型emptyDirhostPath容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次,在Pod 中同时运行多个容器时,这些容器之间通常需要共享文件。Kubernetes 中的 Volume 抽象就很好的解决了这些问题背景...

2020-05-04 15:59:17 195 1

原创 k8s-存储configMap

文章目录ConfigMap 描述信息ConfigMap 的创建Ⅰ、使用目录创建Ⅱ、使用文件创建Ⅲ、使用字面值创建Pod 中使用 ConfigMapⅠ、使用 ConfifigMap 来替代环境变量Ⅱ、用 ConfifigMap 设置命令行参数Ⅲ、通过数据卷插件使用ConfifigMapConfifigMap 的热更新修改 ConfifigMap**修改 log_level 的值为 DEBUG 等待大...

2020-05-04 15:58:31 140

原创 k8s-存储Secret

文章目录Secret 存在意义Service AccountOpaque SecretⅠ、创建说明Ⅱ、使用方式kubernetes.io/dockerconfifigjsonSecret 存在意义Secret 解决了密码、token、密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者 Pod Spec中。Secret 可以以 Volume 或者环境变量的方式使用Secret 有...

2020-05-04 15:57:57 339

原创 k8s-存储PersistentVolume

文章目录概念PersistentVolume (PV)PersistentVolumeClaim (PVC)静态 pv动态绑定持久化卷声明的保护持久化卷类型PV 访问模式回收策略状态持久化演示说明 - NFSⅠ、安装 NFS 服务器Ⅱ、部署 PVⅢ、创建服务并使用 PVC关于 StatefulSet概念PersistentVolume (PV)是由管理员设置的存储,它是群集的一部分。就像节点...

2020-05-04 15:57:08 582

原创 k8s-调度器

文章目录简介调度过程自定义调度器节点亲和性合体键值运算关系Pod 亲和性亲和性/反亲和性调度策略比较如下:污点Taint 和 Toleration污点(Taint)Ⅰ、 污点 ( Taint ) 的组成Ⅱ、污点的设置、查看和去除容忍(Tolerations)Ⅰ、当不指定 key 值时,表示容忍所有的污点 key:Ⅱ、当不指定 effffect 值时,表示容忍所有的污点作用Ⅲ、有多个 Master ...

2020-05-04 15:56:26 305

原创 k8s-安全机制

文章目录AuthenticationⅠ、HTTPS 证书认证:Ⅱ、需要认证的节点两种类型安全性说明证书颁发Ⅲ、kubeconfifigⅣ、ServiceAccountⅤ、Secret 与 SA 的关系实践:创建一个用户只能管理 dev 空间AuthenticationHTTP Token 认证:通过一个 Token 来识别合法用户HTTP Token 的认证是用一个很长的特殊编码方式的...

2020-05-04 15:55:43 279

原创 使用Helm部署 dashboard

文章目录使用Helm部署 dashboard使用Helm部署 dashboardkubernetes-dashboard.yaml:image:repository: k8s.gcr.io/kubernetes-dashboard-amd64tag: v1.10.1ingress:enabled: truehosts:- k8s.frognew.comannotations:...

2020-05-04 15:54:04 723

原创 k8s学习-Helm

文章目录什么是 HelmHelm 部署tiller 默认被部署在 k8s 集群中的 kube-system 这个namespace 下Helm 自定义模板这个文件中定义的值,在模板文件中可以通过 .VAlues对象访问到Debug什么是 Helm在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。况且随着很多项目微服务化...

2020-05-01 22:19:16 524

5、部署 EFK 平台 [Unlocked by www.freemypdf.com].pdf

添加 Google incubator 仓库 部署 Elasticsearchkubectl create namespace efk helm fetch incubator/elasticsearch helm install --name els1 --namespace=efk -f values.yaml incubator/elasticsearch kubectl run cirror-$RANDOM --rm -it --image=cirros -- /bin/sh curl Elasticsearch:Port/_cat/nodes

2020-05-06

3、使用 Helm 部署 metrics-server [Unlocked by www.freemypdf.com].pdf

从 Heapster 的 github <https://github.com/kubernetes/heapster >中可以看到已经,heapster 已经DEPRECATED。 这里是 heapster的deprecation timeline。 可以看出 heapster 从 Kubernetes 1.12 开始将从 Kubernetes 各种安装脚 本中移除。Kubernetes 推荐使用 metrics-server。我们这里也使用helm来部署metrics-server。

2020-05-06

2、使用 Helm 部署 dashboard [Unlocked by www.freemypdf.com].pdf

image: repository: k8s.gcr.io/kubernetes-dashboard-amd64 tag: v1.10.1 ingress: enabled: true hosts: - k8s.frognew.com annotations: nginx.ingress.kubernetes.io/ssl-redirect: "true" nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" tls:- secretName: frognew-com-tls-secret hosts: - k8s.frognew.com rbac: clusterAdminRole: true

2020-05-06

1、部署 Helm [Unlocked by www.freemypdf.com].pdf

在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。况且随 着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本 管理和控制,很大程度上简化了 Kubernetes 应用的部署和管理

2020-05-06

4、Kubernetes JobCronJob 控制器 [Unlocked by www.freemypdf.com].pdf

Job 负责批处理任务,即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束 特殊说明 spec.template格式同Pod RestartPolicy仅支持Never或OnFailure 单个Pod时,默认Pod成功运行后Job即结束 .spec.completions 标志Job结束需要成功运行的Pod个数,默认为1 .spec.parallelism 标志并行运行的Pod的个数,默认为1 spec.activeDeadlineSeconds 标志失败Pod的重试最大时间,超过这个时间不会继续重试

2020-05-06

3、Kubernetes DaemonSet 控制器 [Unlocked by www.freemypdf.com].pdf

DaemonSet 确保全部(或者一些)Node 上运行一个 Pod 的副本。当有 Node 加入集群时,也会为他们新增一 个 Pod 。当有 Node 从集群移除时,这些 Pod 也会被回收。删除 DaemonSet 将会删除它创建的所有 Pod 使用 DaemonSet 的一些典型用法:

2020-05-06

1、Kubernetes Pod 控制器 [Unlocked by www.freemypdf.com].pdf

StatefulSet 作为 Controller 为 Pod 提供唯一的标识。它可以保证部署和 scale 的顺序 StatefulSet是为了解决有状态服务的问题(对应Deployments和ReplicaSets是为无状态服务而设计),其应用 场景包括: 稳定的持久化存储,即Pod重新调度后还是能访问到相同的持久化数据,基于PVC来实现 稳定的网络标志,即Pod重新调度后其PodName和HostName不变,基于Headless Service(即没有 Cluster IP的Service)来实现 有序部署,有序扩展,即Pod是有顺序的,在部署或者扩展的时候要依据定义的顺序依次依次进行(即从0到 N-1,在下一个Pod运行之前所有之前的Pod必须都是Running和Ready状态),基于init containers来实 现 有序收缩,有序删除(即从N-1到0)

2020-05-06

Harbor - 企业级 Docker 私有仓库 .pdf

安装底层需求 Python应该是2.7或更高版本 Docker引擎应为1.10或或更高版本 DockerCompose需要为为1.6.0或更高版本

2020-05-06

2、Kubeadm 部署安装 [Unlocked by www.freemypdf.com].pdf

kube-proxy开启ipvs的前置条件,安装 Docker 软件,安装 Kubeadm (主从配置)

2020-05-06

1、系统初始化 [Unlocked by www.freemypdf.com].pdf

centos7的系统初始化,设置系统主机名以及 Host 文件的相互解析,安装依赖包,设置防火墙为 Iptables 并设置空规则,关闭 SELINUX

2020-05-06

4、Kubernetes 调度器 - 固定节点 [Unlocked by www.freemypdf.com].pdf

Pod.spec.nodeName 将 Pod 直接调度到指定的 Node 节点上,会跳过 Scheduler 的调度策略,该匹配规 则是强制匹配

2020-05-05

3、Kubernetes 调度器 - 污点 [Unlocked by www.freemypdf.com].pdf

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

2020-05-05

2、Kubernetes 调度器 - 调度亲和性 [Unlocked by www.freemypdf.com].pdf

pod.spec.nodeAffinity preferredDuringSchedulingIgnoredDuringExecution:软策略 requiredDuringSchedulingIgnoredDuringExecution:硬策略

2020-05-05

1、Kubernetes 调度器 - 调度说明 [Unlocked by www.freemypdf.com].pdf

Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上。听起来非常简单,但有 很多要考虑的问题: 公平:如何保证每个节点都能被分配资源 资源高效利用:集群所有资源最大化被使用 效率:调度的性能要好,能够尽快地对大批量的 pod 完成调度工作 灵活:允许用户根据自己的需求控制调度的逻辑 Sheduler 是作为单独的程序运行的,启动之后会一直坚挺 API Server,获取 PodSpec.NodeName 为空的 pod, 对每个 pod 都会创建一个 binding,表明该 pod 应该放到哪个节点上

2020-05-05

空空如也

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

TA关注的人

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