k8s

18. k8s之Admission Controller及webhook

k8s之webhook 什么是Admission Controller admission controller是k8s api的拦截器,将拦截到的请求进行过滤或修改处理 Admission webhook是啥 webhook就是一个HTTP回调,接收admission请求,处理并返回 用户可以定义两种webhook: validating admission webhook对应的k8s资源为ValidatingWebhookConfiguration;用于对请求进行验证,是否允许调用 mutating admission webhook对应的k8s 资源为MutatingWebhookConfiguration;用于对请求进行修改,如注入一个Sidecar。webhook回调,接收API Server发送的admissionReview请求,并返回 admissionResponse。 使用webhook有什么要求? kubernetes版本最低是v1.9 api

  • k8s
1 min read
k8s

8. k8s集群环境搭建之集群检查

各服务启动是否正常 etcd kube-apiserver kube-controller-manager kube-scheduler kubelet kube-proxy flanneld docker node 是否都正常 kubectl get nodes 若为notready 则重启该节点上的kubelet systemctl restart kubelet pod中无法通过service ip访问其它容器 kubernetes service对应的endpoint是否正常,有时重启ip会变; kubectl describe service kubernetes 如果不对则重启master node 若service对应 endpointip 正确

  • k8s
2 min read
k8s

6. k8s集群环境搭建之用户及权限

用户密码访问api 配置apiserver 参考 apiserver添加启动参数 --basic-auth-file=SOMEFILE 新增 SOMEFILE 文件,文件内容如下 admin,admin,user-1 pwd,base-user,user-2 pwd,super-user,user-3 重启 kube-apiserver 通过RBAC为admin base-user super-user赋予不同的权限 apiserver添加入参 --authorization-mode=RBAC启动RBAC授权模式 在启动RBAC前,通过kubectl是可以访问api的,再这之后调用失败 [root@test-build ~]# kubectl

  • k8s
5 min read
k8s

14. k8s集群搭建之创建ingress

参考 前言 上一文《从零开始搭建Kubernetes集群(四、搭建K8S Dashboard)》介绍了如何搭建Dashboard。本篇将介绍如何搭建Ingress来访问K8S集群的Service。 Ingress简介 Ingress简单来讲,就是一个负载均衡的玩意,其主要用来解决使用NodePort暴露Service的端口时Node IP会漂移的问题。同时,若大量使用NodePort暴露主机端口,管理会非常混乱。 好的解决方案就是让外界通过域名去访问Service,而无需关心其Node IP及Port。那为什么不直接使用Nginx?这是因为在K8S集群中,如果每加入一个服务,我们都在Nginx中添加一个配置,其实是一个重复性的体力活,只要是重复性的体力活,我们都应该通过技术将它干掉。 Ingress就可以解决上面的问题,其包含两个组件Ingress Controller和Ingress: Ingress 将Nginx的配置抽象成一个Ingress对象,每添加一个新的服务只需写一个新的Ingress的yaml文件即可

  • k8s
1 min read