
kubernetes
weixin_43384009
抓住每次可以学习的机会
展开
-
kubernetes:部署高可用集群
kubernetes1. 重新准备server2、server3、server4,三台虚拟机,安装haproxy和keepalived1. 重新准备server2、server3、server4,三台虚拟机,安装haproxy和keepalived安装keepalived、haproxy,keepalived用来监控集群中各个服务节点的状态,heproxy是一个适合于高可用性环境的tcp/http开元的反向代理和负载均衡软件[root@server2 ~]# yum install -y haprox原创 2020-05-15 11:37:36 · 243 阅读 · 0 评论 -
kubernetes:部署kubeapps应用,为Helm提供web UI界面管理
kubernetes部署kubeapps应用,为Helm提供web UI界面管理部署kubeapps应用,为Helm提供web UI界面管理[kubeadm@server2 ~]$ helm repo add bitnami https://charts.bitnami.com/bitnami"bitnami" has been added to your repositories[kubeadm@server2 ~]$ helm repo listNAME URL原创 2020-05-15 11:15:16 · 1552 阅读 · 0 评论 -
kubernetes:helm的部署、应用(部署nfsclass、部署nginx-ingress、升级和回滚)
kubernetes1. helm简介2. helm安装3. helm部署应用3.1 部署一个redis3.2 创建一个自己的chart3.3 升级和回滚3.4 部署nfsclass3.5 部署nginx-ingress1. helm简介Helm是Deis (https://deis.com/) 开发的一个用于kubernetes的包管理器。每个包称为一个Chart,一个Chart是一个目录。类似Linux系统的yum。Helm Chart 是用来封装 Kubernetes 原生应用程序的一系列 YA原创 2020-05-15 11:10:05 · 927 阅读 · 1 评论 -
kubernetes:HPA(1.Horizontal Pod Autoscaler pod水平自动伸缩)
kubernetes1. Horizontal Pod Autoscaler pod水平自动伸缩1.1 以cpu的使用率判断pod的扩容和缩容1.2 使用多个指标作为伸缩的条件1. Horizontal Pod Autoscaler pod水平自动伸缩官网:https://kubernetes.io/zh/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/1.1 以cpu的使用率判断pod的扩容和缩容[root@serve原创 2020-05-11 15:57:48 · 273 阅读 · 0 评论 -
kubernetes:资源监控(metrics-server部署、dashboard部署)
kubernetes1. metrics server是什么2. metrics-server部署3. dashboard部署1. metrics server是什么Metrics-Server是集群核心监控数据的聚合器,用来替换之前的heapster。容器相关的 Metrics 主要来自于 kubelet 内置的 cAdvisor 服务,有了Metrics-Server之后,用户就可以通过标准的 Kubernetes API 来访问到这些监控数据。Metrics API 只可以查询当前的度量数据,原创 2020-05-09 08:46:29 · 1511 阅读 · 1 评论 -
kuernetes:容器资源限制(内存限制、cpu限制、namespace限制)
kubernetes1. kubernetes采用request和limit两种限制类型来对资源进行分配2. 资源类型2.1 内存限制实例2.2 cpu限制实例2.3 namespace资源限制2.4 namespace设置资源配额2.5 namespace配置pod配额2.6 namespace的创建、使用和删除2.7 清除资源限制和配额1. kubernetes采用request和limit两种限制类型来对资源进行分配request(资源需求):即运行pod的节点必须满足运行pod的最基本需求才能运原创 2020-05-09 08:37:06 · 547 阅读 · 0 评论 -
kubernetes:kubernetes api访问控制、useraccount和serviceaccount的创建和绑定、rbac基于角色的访问授权
kubernetes1. kubernetes api访问控制2. 访问k8s的API Server的客户端3. UserAccount与serviceaccount3.1 创建serviceaccount:3.2 添加secrets到serviceaccount中3.3 把serviceaccount和pod绑定起来:3.4 创建useraccount4. RBAC基于角色访问控制授权4.1 R...原创 2020-05-07 20:39:05 · 3225 阅读 · 1 评论 -
kubernetes:kubernetes调度、亲和、反亲和、污点、容忍
kubernetes1. 认识kubervetes的调度2. nodeName3. nodeselector4. 亲和、反亲和4.1 requiredDuringSchedulingIgnoredDuringExecution 必须满足4.2 preferredDuringSchedulingIgnoredDuringExecution 倾向满足5. 多种规则匹配条件6. pod 亲和性和反亲和性...原创 2020-05-07 20:29:42 · 880 阅读 · 0 评论 -
kubernetes:使用statefulset部署mysql主从集群
kubernetes1. statefullset部署mysql主从集群的原理2. 配置configmap3. headless service和clusterip service4. statefulset配置4.1 先尝试拉起一个主mysql4.2 拉起主从mysql1. statefullset部署mysql主从集群的原理mysql-0是mastermysql-1和mysql-2是两...原创 2020-05-06 20:23:08 · 1451 阅读 · 2 评论 -
kubernetes:statefulset控制器和kubectl的弹性伸缩
kubernetes1. statefulset通过headless service维持pod的拓扑状态1.1 通过headless service(无头服务)确保网络标识是一致1.2 StatefulSet控制器1.3 StatefulSet的两种应用状态1.4 挂接存储1.5 PV和PVC的设计,使得StatefulSet对存储状态的管理成为了可能2. kubectl的弹性伸缩2.1 方式一:...原创 2020-05-06 20:17:58 · 682 阅读 · 0 评论 -
kubernetes:storageclass存储方法
这里写目录标题1. StorageClass存储方法2. NFS Client Provisioner2.1 rbac.yaml做集群授权2.2 deployment.yaml 部署文件2.3 对动态卷的声明2.4 清除之前做的pv2.4 使用yaml文件创建sc2.5 创建pvc2.6 当删除pvc之后,相应的pv和pvc同时删除2.7 当pv被删除时,在服务端备份2.8 创建pod测试3. 默...原创 2020-05-06 20:09:06 · 2695 阅读 · 1 评论 -
kubernetes:volumes 配置管理
kubernetes1. 卷的作用2. kubernetes支持的卷3. emptyDir的使用场景4. hostpath卷5. nfs示例6. persistentVolume持久卷6.1 nfs的pv示例1. 卷的作用2. kubernetes支持的卷3. emptyDir的使用场景[kubeadm@server2 volumes]$ cat pod.yaml apiVersi...原创 2020-04-26 17:51:25 · 321 阅读 · 0 评论 -
kebernetes:configmap配置管理
kubernetes1. configmap的作用2.创建configmap的四种方式:2.1 使用字面值创建2.2 使用文件创建2.3 使用目录创建2.4 编写configmap的yaml文件3. 如何使用configmap3.1 使用configmap设置环境变量3.2 使用configmap设置命令行参数3.3 通过数据卷使用configmap3.4 configmap热更新1. conf...原创 2020-04-26 17:45:46 · 179 阅读 · 0 评论 -
kubernetes:secret配置管理
kubernetes1. secret配置管理的作用和类型2. 查看卷的挂载3. 每个namespace下有一个名为default的默认的serviceaccount对象4. opaque secret其value为base64编码后的值4.1 从文件中创建secret4.2 编写一个secret对象4.3 将secret挂载到volume中4.4 向指定路径映射secret密钥4.5 将secr...原创 2020-04-26 17:40:04 · 381 阅读 · 0 评论 -
kubernetes:flannel vxlan的通信过程
kubernetes1.网络使用的是flannel2.flannel vxlan的通信过程1.网络使用的是flannelflannel使用的镜像为quay.io/coreos/flannel:v0.12.0-amd64下载地址:https://github.com/coreos/flannel/releases2.flannel vxlan的通信过程nodes容器(pod)...原创 2020-04-24 13:11:32 · 698 阅读 · 0 评论 -
kubernetes:ingress2
kubernetes1. 使用ingress2. 用DaemonSet结合nodeselector来部署ingress-controller到特定的node上3. ingress tls配置1. 使用ingress[kubeadm@server2 manifest]$ cat ingress.yaml apiVersion: networking.k8s.io/v1beta1kind: I...原创 2020-04-23 23:23:14 · 791 阅读 · 0 评论 -
kubernetes:解决无法dns解析的问题
kubernetes解决:/ # nslookup myservice 不能解析的问题问题所在:kube-dns错误[kubeadm@server2 manifest]$ kubectl get pod -o wideNAME READY STATUS RESTARTS AGE IP ...原创 2020-04-23 23:16:55 · 10447 阅读 · 0 评论 -
kubernetes之service和配置ingress控制器
kubernetes1. service2. Service 是由 kube-proxy 组件,加上 iptables 来共同实现3. 集群内部访问4. IPVS模式的service,可以使K8s集群支持更多量级的Pod5. Flannel vxlan模式跨主机通信原理6. 外部访问7. Kubernetes 提供了一个 DNS 插件 Service,通过解析访问8.headless servic...原创 2020-04-23 10:12:34 · 1205 阅读 · 0 评论 -
kubernetes之控制器
kubernetes一、控制器一、控制器pod的类型和控制器类型replication controller 和reolicaset的区别、deploymentdaemonSetstatesetjob、cronjob、hpareolicaset实例[kubeadm@server2 manifest]$ cat rs.yaml apiVersion: apps/v1...原创 2020-04-19 13:25:51 · 235 阅读 · 0 评论 -
kubernetes之pod生命周期和探针
kubernetes一、pod生命周期二、探针2.1 认识探针2.2 使用探针2.3 做存活检测(liveness)2.4 准备就绪检测(readinessProbe)一、pod生命周期查看pod上的namespace[kubeadm@server2 ~]$ kubectl get pod -n kube-system NAME ...原创 2020-04-19 13:18:53 · 311 阅读 · 0 评论 -
kubernetes之资源清单
kubernetes一、资源清单一、资源清单清除deployment[kubeadm@server2 ~]$ kubectl delete deployments.apps myappdeployment.apps "myapp" deleted[kubeadm@server2 ~]$ kubectl get podNAME READY STATUS RESTART...原创 2020-04-19 13:11:17 · 168 阅读 · 0 评论 -
kubernetes之pod管理
kubernetes一、认识pod二、pod管理一、认识pod二、pod管理kubectl命令网址:https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands运行服务[kubeadm@server2 ~]$ kubectl run nginx --image=nginxpod/nginx...原创 2020-04-19 12:16:43 · 238 阅读 · 0 评论 -
kubernetes之使用kubeadm部署一个单主集群
这里写自定义目录标题一、认识kubernetes二、清理之前多的docker-swarm实验三、部署kubernetes3.1 准备工作3.2 使用kubeadm创建一个单主集群一、认识kubernetes二、清理之前多的docker-swarm实验将之前做docker-swarm的节点脱离出来[root@server1 ~]#docker node lsID ...原创 2020-04-19 12:07:41 · 2691 阅读 · 0 评论