实现原理 通过WebSocket实现Kubernetes Exec命令行终端,我们需要提供一个http server,前端页面首先请求http server,http server与k8s api server交
在公司办公网访问kubernetes.io官方网站非常慢,为方便工作与学习,可以将其在本地进行部署,快速阅读。kubernetes.io项目git地址: https://github.com/kubernetes/website 。 许多开源技术文档均采用Markdown编写,docker、kubernetes也不例外,之后再采用网站生成器Hugo生成静态html进
了解AQS实现原理之后,再来分析ReentrantLock代码就非常简单了,在学习互斥锁之前很有必要搞清楚可重入锁、公平锁、非公平锁几个概念。 什么是可重入锁?线程成功获取锁之后,可以多次进入临界区访问资源,ReentrantLock就是一种可重入锁,其可重入的实现依赖于AQS的父类AOS,
JUC是Java中并发控制的核心包,其中AQS是并发的基础核心类,类名全称AbstractQueuedSynchronizer,其父类是AbstractOwnableSynchronizer(AOS), 用于存取获得独占锁的线程。Java中的ReentrantLock、CountDownLa
随着Google容器调度平台Kubernetes的开源,很多社区与项目逐渐涌现,Helm就是其中之一。Helm可以理解成是Kubernetes的包管理工具, 类似rpm与CentOS、dpkg与Debian的关系。在Helm中,安装包被称为Chart,Helm定义了包的文件结构以及语法规范,
gRPC与大多数RPC框架一样,通过定义一个服务Service,然后明确指定能够被远程调用的方法。gRPC默认使用Protocol Buffers作为接口定义语言以及消息传输格式, 当然也可以使用其它可替代的协议,关于Protocol Buffers的介绍请参考gRPC协议Protocol Buf
Protocol Buffers是一种灵活、高效、自动序列化结构数据的协议,当前有两个版本,分别是proto2与proto3,两个版本的协议不能完全兼容。 proto3简化了协议使用,生成的协议使用代码支持更多的编程语言,如Java、C++、Python、Java、Lite、Ruby、JavaScript、
在Kubernetes集群中,API Server是集群管理API的入口,由运行在Master节点上的一个名为kube-apiserver的进程提供的服务。 用户进入API可以通过kubectl、客户端库或者http rest,User 或者 Service Account可以被授权进入API。当一个请求到达AP
以Harbor v1.4~v1.6之间的版本为例,详细分析其构建离线包的整个流程,然后结合当前的环境以及目标,去优化这个构建流程。 在Harbor的整个构建流程中,涉及的技术知识点包括Shell、Python、Make(Makefile)、Go、Docker等,不要求对这些技术熟练精通, 能看懂
在了解Harbor之前,有必要先了解一下Docker开源的Docker Registry,Registry就是用来存储管理Docker镜像的服务, 客户端可以向Registry发起镜像的上传、下拉等请求操作。Docker Registry服务早期是由Docker官方下的docker/regist