k8s之Secret

导读 上一篇说了ServiceAccount,这一篇就来看一下Secret。 Secret Secret的主要作用是保管私密数据,比如密码、OAuth Tokens、SSH Keys等信息。 上一篇说到,默认的Secret主要包含三个东西,分别是token、ca.crt、namespace 当然,也 ... »

k8s之ServiceAccount

导读 上一篇说了k8s的RBAC授权模式,今天就来简单看一下其中涉及到的ServiceAccount。 简介 k8s创建两套独立的账号系统,原因如下: (1)User账号给用户用,Service Account是给Pod里的进程使用的,面向的对象不同 (2)User账号是全局性的,Service A ... »

k8s之RBAC授权模式

导读 上一篇说了k8s的授权管理,这一篇就来详细看一下RBAC授权模式的使用 RBAC授权模式 基于角色的访问控制,启用此模式,需要在API Server的启动参数上添加如下配置,(k8s默然采用此授权模式)。 --authorization-mode=RBAC /etc/kubernetes/ma ... »

k8s之API Server认证

集群安全性 在生产环境中,必须保障集群用户的角色以及权限问题,不能给所有用户都赋予管理员权限。 1、集群的安全性必须考虑如下几个目标 (1)保证容器与其所在宿主机的隔离 (2)限制容器给基础设置或其他容器带来的干扰 (3)最小权限原则:合理限制所有组件的权限,确保组件只执行它被授权的行为,通过限制单 ... »

k8s之HTTP请求负载分发

一、导读 对于基于HTTP的服务来说,不同的URL地址经常对应不同的后端服务或者虚拟服务器,通常的做法是在应用前添加一个反向代理服务器Nginx,进行请求的负载转发,在Spring Cloud这个微服务框架中,使用zuul网关实现此功能。 而对于k8s集群来说,当然也是可以用Nginx实现请求的转发 ... »

k8s之DNS服务器搭建

一、导读 在使用k8s部署springboot+redis简单应用这篇文章中,spring boot连接redis是直接使用的IP连接,那么可不可以直接使用服务名称进行连接呢?答案是可以的,这就是k8s集群范围内的DNS服务来完成服务名到ClusterIP的解析,接下来就一起看一下如何搭建DNS服务 ... »

k8s重器之Service

Service是k8s的核心,通过创建Service,可以为一组具有相同功能的容器应用提供一个统一的入口地址,并将请求进行负载分发到各个容器应用上。 目录: Service定义详解 Service基本用法 集群外部访问Pod和Service 一、Service定义详解 Service的定义比Pod简 ... »

服务器挂掉导致需要对k8s新增节点

【导读】今日是周六,本想午休起来之后写篇有关kubernetes service的文章,没想到两台虚拟机接连挂掉,所以又重新创建了两台虚拟机。新建时又一直黑屏,所以只能克隆。 由于虚拟机是新建的,所以就面领着需要重新安装的问题,接下来就这个问题记录一下把。 一、删除服务器上残留信息 由于两台虚拟机是 ... »

k8s之深入解剖Pod(三)

目录: Pod的调度 Pod的扩容和缩容 Pod的滚动升级 一、Pod的调度 Pod只是容器的载体,通常需要通过RC、Deployment、DaemonSet、Job等对象来完成Pod的调度和自动控制功能。 1、RC、Deployment全自动调度 RC的主要功能之一就是自动部署一个容器应用的多份副 ... »

k8s之深入解剖Pod(二)

目录: Pod配置管理:ConfigMap 容器内获取Pod信息:Downward API Pod生命周期和重启策略 Pod健康检查 一、ConfigMap 将应用所需的配置信息与程序进行分离,可以使应用程序更好的被复用,通过不同的配置实现更灵活的功能。如果将应用打包成镜像,再用环境变量或者外挂文件 ... »

k8s之深入解剖Pod(一)

上文说了一下k8s的简单使用,接下来就让我们来具体深入了解一下Pod。为了避免篇幅太长,所以会分成几篇。 目录: Pod定义详解 静态Pod Pod容器共享Volume 一、Pod定义详解 先看一个简单的nginx的Pod定义: apiVersion: v1 kind: Pod metadata: ... »

CyclicBarrier原来是这样的

上一篇聊了一下Semaphore信号灯的用法及源码,这一篇来聊一下CyclicBarrier的用法及解析。 官网解释: 允许一组线程全部等待彼此达到共同屏障点的同步辅助。循环阻塞在涉及固定大小的线程方的程序中很有用,这些线程必须偶尔等待彼此。屏障被称为循环 ,因为它可以在等待的线程被释放之后重新使用 ... »

Semaphore最详细解析

官方解释: 一个计数信号量。在概念上,信号量维持一组许可证。如果有必要,每个acquire()都会阻塞,直到许可证可用,然后才能使用它。每个release()添加许可证,潜在地释放阻塞获取方。但是,没有使用实际的许可证对象; Semaphore只保留可用数量的计数,并相应地执行。信号量通常用于限制线 ... »

JDK动态代理详解

JDK动态代理是代理模式的一种,且只能代理接口。spring也有动态代理,称为CGLib,现在主要来看一下JDK动态代理是如何实现的? 一、介绍 JDK动态代理是有JDK提供的工具类Proxy实现的,动态代理类是在运行时生成指定接口的代理类,每个代理实例(实现需要代理的接口)都有一个关联的调用处理程 ... »