系列目录 前面一节我们介绍了如何使用kube-proxy搭建代理访问dashboard,这样做缺点非常明显,第一可以通过http访问,第二是这种方式要启动一个后台进程,如果进程关闭了则不能够访问了,还需要手动开启proxy.另外一个问题就是可能有部分读者已经遇到了,在输入token的时候,web界面无影响,笔者在本机试的时候通过firefox无响应,通过谷歌浏览器有时候无响应,有时候偶尔会有响应.下面通过使用api-server地址来访问dashboard. 创建.kube文件夹并把admin.…
系列目录 Helm是kubernetes的应用包管理工具,是CNCF孵化器下的一个项目,主要用来管理 Charts.类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM.它提供了一种简单的方法来发现,分享和使用为kubernetes准备的软件包.它消除了繁杂的配置和部署,从而极大提高开发者的生效效率. 怎样来理解它呢,假设我们的项目非常复杂,同时需要部署api网关,注册中心,配置中心,web服务,数据库中间件,消息队列中间件和缓存中间件...这将会产生大量的配置文件,如果以上操行的…
系列目录 kubernetes dashboard是kubernetes官方提供的web管理界面,通过dashboard可以很方便地查看集群的各种资源.以及修改资源编排文件,对集群进行扩容操作,查看日志等.功能非常强大.虽然dashboard是官方提供的web管理界面,但是并没有默认安装,需要额外安装.下面将介绍如何安装kubernetes dashboard以及如何访问. dashboard安装 使用如下命令: wget https://raw.githubusercontent.com/ku…
引言: JavaMail 是一种可选的.能用于读取.编写和发送电子消息的包 JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html JavaMail  API中包含了多种邮件传输协议: SMTP   POP(最新为pop3)  IMAP  MIME 四大类  (本章主要讲解常用的 SMTP) 该API的几大核心类:会话(session).消息(message).地址(address).验证程序(Au…
系列目录 上一节我们讲解到了如何限制用户访问dashboard的权限,这节我们讲解一个案例:如何创建一个只读权限的用户. 虽然可以根据实际情况灵活创建各种权限用户,但是实际生产环境中往往只需要两个就行了一个是前面创建的拥有集群所有权限的用户,另一个是一个拥有只读权限的普通用户.把只读权限分配给开发人员,使得开发人员也可以很清楚地看到自己的项目运行的状况. 在进行本章节之前,大家可以思考一下怎么用前面的知识来实现,大家可能都有思路,但是要真正的实现起来也不是一简非常容易的事,可能需要进行多轮修改和…
系列目录 前面我们的示例中,我们创建的ServiceAccount是与cluster-admin 绑定的,这个用户默认有最高的权限,实际生产环境中,往往需要对不同运维人员赋预不同的权限.而根据实际情况也可能会赋予开发人员只读的权限.这一节我们将介绍如何创建不同权限的用户. 在开始之前,我们先了解一些关于kubernetes RABA的一些基本概念. Role Role表示是一组规则权限,只能累加,Role可以定义在一个namespace中,只能用于授予对单个命名空间中的资源访问的权限.比如我们新…
系列目录 其实前面安装部分我们已经分享一些互联网上其它网友分享的一些坑,本篇介绍helm的基本使用以及在使用过程中碰到的一些坑. 客户端版本和服务端版本不一致问题 有些朋友可能在使用helm init的时候直接复制页面上的命令,这样由于客户端和服务端版本不一致造成helm无法使用,解决办法在复制helm init 阿里云网址时把网址里面的版本更新为和客户端保持一致的版本. 阿里云镜像过旧 你可能按照上一节的操作最终成功安装了helm,但是在实际工作中你可能会发现,阿里云的helm镜像仓库过旧(这…
目录 继上一篇kubernetes理论知识完结.本篇主要讲解基于nexus搭建一个docker镜像仓库(当然大家实践过程是不必完全跟着做,也可以搭建harbor仓库或者直接把镜像推送到docker hub或者阿里云公仓等),以及kubernetes dashboard在生产环境中如何给不同的角色(比如集群管理员,项目管理员,项目开发者)分配不同的权限,如何使用helm来优化持续交付流程(后期后加入kustomize工具的使用介绍).如何部署一个ocelot网关服务,如何部署一个有状态consul…
系列目录 构建一个 Helm Chart 下面我们通过一个完整的示例来学习如何使用 Helm 创建.打包.分发.安装.升级及回退Kubernetes应用. 创建一个名为 mychart 的 Chart $ helm create mychart 该命令创建了一个 mychart 目录,该目录结构如下所示.这里我们主要关注目录中的 Chart.yaml.values.yaml.NOTES.txt 和 Templates 目录. [centos@k8s-master helm]$ tree mych…
系列目录 前面我们讲解了如何搭建nexus服务器,以及如何使用nexus搭建docker私有镜像仓库,示例中我们都是手动docker login登陆私服,然后通过命令拉取镜像然后运行容器.然而这种做法在kubernetes集群中是不可行的.第一,项目规模不同,每天产生的镜像数量也不同,如果每天产生大量仓库都要手动执行docker pull来拉取,非常麻烦也非常容易出错.第二,集群规模不同,节点数量也不同,少则三五个,多则成百上千甚至更多.我们一台台拉取显然非常麻烦,即便使用ansible脚本批量…