系列目录 上一节我们分别使用纯文本账户密码和docker的config文件一创建一个kubernetes secret对象,并且把它添加到containers的imagePullSecrets字段用以拉取私仓镜像.这一节我们讲解另一种方法:即把secret附加到default这个serviceaccount上,这样拉取镜像的时候就不需要每次都在yml文件里声明imagePullSecrets字段. 至于为什么把镜像的拉取secret附加到default这个serviceaccont上就可以实现无…
pod声明周期(状态):pending , running, succeeded, failed, unknown 挂起(Pending):Pod 已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建.等待时间包括调度 Pod 的时间和通过网络下载镜像的时间,这可能需要花点时间. 运行中(Running):该 Pod 已经绑定到了一个节点上,Pod 中所有的容器都已被创建.至少有一个容器正在运行,或者正处于启动或重启状态. 成功(Succeeded):Pod 中的所有容器都被成…
系列目录 其实前面安装部分我们已经分享一些互联网上其它网友分享的一些坑,本篇介绍helm的基本使用以及在使用过程中碰到的一些坑. 客户端版本和服务端版本不一致问题 有些朋友可能在使用helm init的时候直接复制页面上的命令,这样由于客户端和服务端版本不一致造成helm无法使用,解决办法在复制helm init 阿里云网址时把网址里面的版本更新为和客户端保持一致的版本. 阿里云镜像过旧 你可能按照上一节的操作最终成功安装了helm,但是在实际工作中你可能会发现,阿里云的helm镜像仓库过旧(这…
Kubernetes Pod 镜像拉取策略 官方文档:https://kubernetes.io/docs/concepts/containers/images/ • IfNotPresent:默认值,镜像在宿主机上不存在时才拉取• Always:每次创建 Pod 都会重新拉取一次镜像• Never: Pod 永远不会主动拉取这个镜像 # 查看已创建deployment的拉取策略kubectl get deploy/nginx-deployment -o yaml | grep imagePul…
1.容器镜像是什么? 1.容器镜像(Container Image)是最终运行的软件: 2.容器镜像(最初为Docker镜像,现在叫OCI镜像更合适)是将软件打包的形式.但是容器镜像还可以携带额外的设置和命令: 环境变量.启动命令.用户名等. 3.容器镜像是由容器运行时解释和执行.Docker守护进程是最著名的,后来又出现了Runc和Containerd.当然现在还有其他实现,比如CRI-O.gVisor.Kata.Firecracker和Project Pacific,这些都是独立的实现,可以…
系列目录 前面我们讲解了如何搭建nexus服务器,以及如何使用nexus搭建docker私有镜像仓库,示例中我们都是手动docker login登陆私服,然后通过命令拉取镜像然后运行容器.然而这种做法在kubernetes集群中是不可行的.第一,项目规模不同,每天产生的镜像数量也不同,如果每天产生大量仓库都要手动执行docker pull来拉取,非常麻烦也非常容易出错.第二,集群规模不同,节点数量也不同,少则三五个,多则成百上千甚至更多.我们一台台拉取显然非常麻烦,即便使用ansible脚本批量…
系列目录 Helm是kubernetes的应用包管理工具,是CNCF孵化器下的一个项目,主要用来管理 Charts.类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM.它提供了一种简单的方法来发现,分享和使用为kubernetes准备的软件包.它消除了繁杂的配置和部署,从而极大提高开发者的生效效率. 怎样来理解它呢,假设我们的项目非常复杂,同时需要部署api网关,注册中心,配置中心,web服务,数据库中间件,消息队列中间件和缓存中间件...这将会产生大量的配置文件,如果以上操行的…
系列目录 Nexus oss仓库管理平台搭建 Nexus是一款仓库管理工具,支持Npm,bower,maven,nuget,apt,yum甚至docker,helm等各种仓库,说的通俗以下,就是私服镜像仓库.并且有免费版,OSS版即为免费版,下载的时候请注意版本的选择. 下载地址 往下面滚动页面,可以看到Choose your Nexus,有osx,windows和unix版本可供选择.这里我选择的是windows版本. 下载的内容是一个压缩包,下载完成后把压缩包解压.解压后有两个文件夹,我们进…
系列目录 由于服务端设置了https访问,因此如果通过浏览器访问时会提示证书不被信任,但是仍然可以通过处理继续访问.但是在自动化环境中,都是通过命令来请求的,这样不受信任的https就会报错误,这样我们就要像docker服务器一样添加对自签证书的信任.前两部分我们分别在docker推送镜像和拉取镜像时添加了信任证书操作.但是都是基于linux的,在自动化环境中,可能有的节点是windows节点,我们这一节来看下如何在windows环境下添加自签证书信任. 我们先来看一下如果没有添加证书信任的情况…
因国内访问不到goole服务器,只能拉取国内的镜像,这里以阿里云为例. 安装minikube时报failed to pull image "k8s.gcr.io/kube-apiserver:v1.13.4". 原理:先拉取阿里镜像,再改名 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.2.24 docker tag registry.cn-hangzhou.aliyuncs.com/goo…