Kubernetes学习(CKA及CKAD考试)
CKA及CKAD是CNCF专门为Kubernetes认证考虑,考试通过即被认为能熟练使用Kubernetes.
但这两门考试又有所不同.
module其实是在go1.12才有的产物,在这之前都是由GOPATH来做包管理, GOPATH注定是要退出历史,这里来说一说module跟package的关系.
多数情况下,在搭建kubernetes集群时都会选择使用工具,常用的比如官方的kubeadm, kubespray, minikube等,简单到一条命令就能完成一个kubernetes集群的搭建, 但同时,我们也忽略了k8s里面的一些原理性的东西, 刚好最近在准备CKA考试,准备手工尝试一下证书的使用.
在使用kubernetes的时候,常常不太会关注docker这层, 在Node节点查看docker的进程, 会发现在docker-client、dockerd、containerd、containerd-shim、runC, 傻傻分不清楚这几个跟docker相关的进程到底扮演着什么角色.
目前,Grafana是使用statefulset的形式部署的, 单实例,底层存储也没有使用分布式容灾, 里面有很配置好的模板,整天提醒吊胆地怕这个实例磁盘出问题,在不给分配更多资源的情况下,必须要找个合适的备份方案, 当然,可以直接备份整个目录, 这里介绍下使用kubernetes的cronjob进行定时备份
该文章为转载, 原文地址在https://colobu.com/2018/02/27/go-addressable/
Go语言规范中规定了可寻址(addressable)对象的定义
For an operand x of type T, the address operation &x generates a pointer of type *T to x. The operand must be addressable, that is, either a variable, pointer indirection, or slice indexing operation; or a field selector of an addressable struct operand; or an array indexing operation of an addressable array. As an exception to the addressability requirement, x may also be a (possibly parenthesized) composite literal. If the evaluation of x would cause a run-time panic, then the evaluation of &x does too.
这篇主要学习下golang中的数组及slice(切片)及常规操作, 主要是slice, 但是并不会涉及slice的底层原理, 这个范围比较大, 有必要单独拎出来.
service在kubernetes是一个比较核心的概念, 得益于service机制,才让业务可以don’t care后端real pod的IP 可动态变化. 可以说,service是一组具有提供相同能力pod的代理.
经常听到运维前辈说到方法论这个词, 之前觉得很高深, 后来想想, 其实也就是经验多了, 把对某类事务的处理沉淀或者抽象为一种统一的方法. 就像下面我要说一个例子来讲一讲
项目中需要一个分布式数据库用于存储业务的KV数据, 在前期项目调研结合业务比对了业界常用的KV数据库模型后, 最后选择了CockRoachDB(CRDB).