Kubernetes里的secret最基本的用法
Secret解决了密码、token、密钥等敏感数据的配置问题,使用Secret可以避免把这些敏感数据以明文的形式暴露到镜像或者Pod Spec中。Secret可以以Volume或者环境变量的方式使用。使用如下命令行创建一个secret:kubectl create secret generic admin-access --from-file=./username.txt --from-file=
站在巨人肩膀上的牛顿:Kubernetes和SAP Kyma
这周Jerry在SAP上海研究院参加了一个为期4天的Kubernetes培训,度过了忙碌而又充实的4天。Jason,Benny和Peng三位大神的培训干货满满,借此机会,Jerry和过去的两位老领导Patrick和Evan叙了叙旧,也拜见了上海SAP圈子里的几位大佬。以前在网络上久闻大名,这次终于见到了大佬们本人,了却我一桩心愿。为什么SAP内部也在开展Kubernetes的培训呢?诞生于2015
Kubernetes stateful set讲解以及一个基于postgreSQL的具体例子
Stateful Set是Kubernetes 1.9版本新引入的一个概念,用于管理有状态的应用。Kubernetes官方文档:https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/Manages the deployment and scaling of a set of Pods, and prov
如何在Kubernetes里给PostgreSQL创建secret
创建一个initdb.sql文件,输入如下内容:-- This is a postgres initialization script for the postgres container.-- Will be executed during container initialization ($> psql postgres -f initdb.sql)CREATE ROLE adsuse
如何使用Kubernetes的configmap通过环境变量注入到pod里
在Kubernetes官网里,有这样一篇文章,提到了Kubernetes里的一个最佳实践就是把应用代码同配置信息分开,一种方式就是使用Kubernetes 1.2里引入的configmap概念。https://kubernetes.io/blog/2016/04/configuration-management-with-containers/configmap实际上就是一系列键值对,存储于etc
使用Gardener在Google Cloud Platform上创建Kubernetes集群
Gardener是一个开源项目,github地址:https://github.com/gardener/gardener/使用Gardener,我们可以在几分钟之内在GCP, AWS, Azure或者Openstack上轻松创建Kubernetes Cluster。点击新建按钮创建一个Cluster,这里Infrastructure我选择的是gcp:创建成功后,状态变为Ready,表明该集群已经
通过describe命令学习Kubernetes的pod属性详解
我们可以首先使用kubectl get pods命令得到pod列表,比如我们想研究pod nginx-storage-pod的明细:使用命令kubectl describe pod nginx-storage-pod > nginx-storage-pod.yaml, 将describe命令的输出重定向到一个yaml文件里。用vi打开这个yaml文件:pod的所有属性可以从这个yaml文件里
一个简单的例子理解Kubernetes的三种IP地址类型
很多Kubernetes的初学者对Kubernetes里面三种不同的IP地址和工作机制理解得不是很清楚。本文我们通过一个最简单的例子来学习。用如下命令行创建一个基于nginx的deployment:kubectl run nginx --image=nginx:maxline用kubectl get deploy查看成功生成的名为nginx的deployment:此时这个deployment里的n
使用describe命令进行Kubernetes pod错误排查
我有一个pod名叫another,用kubectl create创建后发现过了29分钟,状态还是处于ContainerCreating阶段。使用kubectl describe命令检查:从错误消息发现是因为这个pod attach volume失败:FailedAttachVolume 2m1s (x22 over 31m) attachdetach-controller AttachVolume
如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded
我在启动minikube时,遇到如下错误消息:Starting local Kubernetes v1.10.0 cluster...Starting VM...E1010 03:27:37.920050 4827 start.go:174] Error starting host: Error creating host: Error executing step: Running precre
安装指定版本的minikube
Minikube是什么?Kubernetes集群的安装和部署对于很多初学者来说是一道坎。为了方便大家开发和体验Kubernetes,Kubernetes开源社区提供了可以在本地部署的Minikube。Minikube是一种方便在本地运行Kubernetes的工具,原理是在Virtual Machine(虚拟机)中运行单节点的Kubernetes集群,这个集群主要用于开发和测试目的,而非生产环境。虽
使用脚本在Linux服务器上自动安装Kubernetes的包管理器Helm
Helm之于Kubernetes好比yum之于Red Hat Enterprise Linux,或者apt-get之于Ubuntu。Helm是由helm CLI和Tiller组成,是典型的Client/Server应用。helm运行于客户端,提供命令行界面;Tiller应用运行于Kubernetes内部。在Jerry之前的文章里曾经介绍过手动下载Helm安装包,解压后把执行文件拷贝到环境变量的做法