在Kubernetes上使用Elasticsearch+Fluentd+Kibana集中管理日志 2017年1月21日 Kubernetes和EFK 我们使用Kubernetes作为微服务架构的基础,在我们的系统中每个微服务都有多个副本,每个副本的数量以及所在的Node都是可变的。因此对于日志需要集中化管理,在使用Kubernetes之前,我们的系统使用ELK…… 阅读全文
在Kubernetes上部署有状态服务 2017年1月20日 Kubernetes对于无状态服务的支持已经十分成熟,有状态服务需要保存状态,Kubernetes提供了Volume和Persistent Volume用于服务的状态保存。 很多有状态服务都是以集群形式部署的,因此在在Kubernetes上部署…… 阅读全文
Kubernetes集群安全:Api Server认证 2017年1月19日 Kubernetes提供了三种级别的客户端认证方式: HTTPS证书认证,是基于CA根证书签名的双向数字证书认证方式,是最严格的认证 HTTP Token认证,通过Token识别每个合法的用户 HTTP Basic认证 HTTP Token认证和Http Basic认证是相…… 阅读全文
Kubernetes资源对象之Persistent Volumes 2017年1月19日 PV和PVC的概念 Kubernetes的Persistent Volume是对存储的抽象,这个抽象包含两个资源: 持久化卷 PersistentVolume,后边简称PV 持久卷申请PersistentVolumeClaim,后边简称PVC PV是集…… 阅读全文
Kubernetes核心组件:Api Server 2017年1月18日 kube-api-server提供Kubernetes各种资源的CRUD和Watch相关的Http Restful Api,是整个集群的中心。 Kubernetes的Restful Api Api简介 kube-api-server以静态Pod的形式运行在master…… 阅读全文
在Kubernetes Pod中使用Ceph RBD Volume 2017年1月18日 Ceph集群上的操作 创建Ceph Pool Ceph集群安装完成后,默认的Pool是rbd: 1ceph osd lspools 20 rbd, 一个Ceph集群可以有多个pool,pool是逻辑上的存储池。不同的pool可以有不一样的数据处理方式,例如replica size, placement groups, crush rules,sna…… 阅读全文
Kubernetes服务的滚动升级 2017年1月17日 当需要升级集群中的某个服务时,需要停止该服务相关的Pod,pull最新的docker镜像,然后重新启动。 如果一下把所有Pod都停止,服务在升级的时间内会不可用。因此,Kubernetes提供了滚动升级的功能。 kubectl rolling-update命…… 阅读全文
从集群外部访问Kubernetes Service 2017年1月17日 Kubernetes通过Service资源在Kubernetes集群内针对容器实现了服务发现和负载均衡。 如果服务要暴露到集群外部,从集群外部访问服务,需要借助一些集群外部提供的负载均衡策略。 先来看一下Kubernetes Service的类型…… 阅读全文
在Kubernetes上运行SonarQube 2017年1月17日 文本描述如何在Kubernetes上运行一个Sonarqube和MySQL。 准备 kubernetes集群构成如下,这里是单机的试验环境。 1kubectl get nodes 2NAME STATUS AGE 3cent0 Ready,master 1h mysql的pod mysql-rc.yaml 1apiVersion: v1 2kind: ReplicationController 3metadata: 4 name: mysql 5spec: 6 replicas: 1 7 selector: 8 app: mysql 9 template: 10 metadata: 11 labels: 12 app: mysql 13 spec: 14 containers: 15 - name:…… 阅读全文
Kubernetes Pod容量伸缩 2017年1月16日 服务的伸缩性 伸缩性是指系统可以根据需求和成本调整自身处理能力的一种能力,构建可伸缩的服务有可能要求服务的处理能力在数天内扩大数倍,又需要在数天后将处理能力还原回去。 在Kubernetes集群中我们可以通过Replication Control…… 阅读全文