随笔分类 -  docker-kubernetes

docker . kubernetes
摘要:nginx-ingress中解决跨域问题: 在annotations:加入如下配置 nginx.ingress.kubernetes.io/configuration-snippet: > more_set_headers "Access-Control-Allow-Origin: https:// 阅读全文
posted @ 2021-06-23 11:57 诗码者 阅读(2358) 评论(0) 推荐(0) 编辑
摘要:前言: 在 Kubernetes 中,Pod 停止时 kubelet 会先给容器中的主进程发 SIGTERM 信号来通知进程进行 shutdown 以实现优雅停止,如果超时进程还未完全停止则会使用 SIGKILL 来强行终止。 容器终止流程: 1、Pod 被删除,状态置为 Terminating。 阅读全文
posted @ 2021-06-07 16:00 诗码者 阅读(6421) 评论(0) 推荐(0) 编辑
摘要:1、使用自签名证书 问题: 使用kubectl时 x509: certificate signed by unknown authority 解决: kubectl config set-cluster 集群名称 --insecure-skip-tls-verify=true 阅读全文
posted @ 2020-11-12 15:06 诗码者 阅读(469) 评论(0) 推荐(0) 编辑
摘要:1、准备bpf环境 #!/bin/bash a=`docker run --privileged --pid=host alpine pidof kubelet` docker run --privileged --pid=host alpine nsenter -t$a -m -- mount b 阅读全文
posted @ 2020-05-25 10:58 诗码者 阅读(690) 评论(0) 推荐(0) 编辑
摘要:一、概述 1、etcd的v2和v3的认证有些不同,需要分别设置2、Etcd通过用户(user)-角色(role)-权限的方式来控制访问,用户关联角色,角色拥有权限,从而用户也就拥有了相应的权限3、Etcd开启Basic Auth之后,默认会启用两个角色root和guest,root角色拥有所有权限, 阅读全文
posted @ 2019-12-11 20:04 诗码者 阅读(6789) 评论(0) 推荐(0) 编辑
摘要:1、在1.7版本后使用HostAliases修改pod的hosts文件。该文件由kubelet管理 在deployment的yaml文件中添加在pod template 的spec里面即可: nameservers:是自己的内网dns 禁止访问外网,走hostaliases。 阅读全文
posted @ 2019-11-24 22:17 诗码者 阅读(6346) 评论(0) 推荐(0) 编辑
摘要:1、 net.bridge.bridge-nf-call-iptables = 1net.bridge.bridge-nf-call-arptables = 1net.bridge.bridge-nf-call-ip6tables = 1net.netfilter.nf_conntrack_max 阅读全文
posted @ 2019-11-15 20:38 诗码者 阅读(2649) 评论(0) 推荐(0) 编辑
摘要:1、准备consul环境,参考我之前的博客实现或参考consul的官网部署最新的consul。 2、本次测试使用的是kubernetes-1.15.0 3、初始化集群 1)准备初始化文件 controlPlaneEndpoint: "kubeadm-ha.service.hq:6443" ,kube 阅读全文
posted @ 2019-07-02 14:35 诗码者 阅读(1153) 评论(0) 推荐(1) 编辑
摘要:一、kubernetes exposed servcie 暴露服务的几种方式: LoadBalancer NodePort Ingress HostNetwork HostPort LoadBalancer只能配置在serveice,需要云运营商提供支持。HostPort应用不是很多,特殊情况下可能 阅读全文
posted @ 2019-06-27 16:08 诗码者 阅读(1561) 评论(0) 推荐(0) 编辑
摘要:1、问题描述 最近查看kubernetes 的events,发现了有两个节点经常出现下面的信息: 这个是kubelet打出来的,字面意思很好理解,就是nameserver 超出限制,超出的将被忽略。那限制是多少呢?so带着这个疑问就去github kubernetes源码一探究竟。 首先确定知道这个 阅读全文
posted @ 2019-06-05 17:43 诗码者 阅读(14356) 评论(0) 推荐(1) 编辑
摘要:一、概述 kubernetes 的eviction检测diskpresure,检测的是kubelet的root-dir。kubelet的默认root-dir是/var/lib/kubelet,可以使用参数--root-dir进行修改,源码: kubernetes/cmd/kubelet/app/op 阅读全文
posted @ 2019-06-05 16:13 诗码者 阅读(703) 评论(0) 推荐(0) 编辑
摘要:一、概述 新版本的kubernetes默认使用了coredns,这里就不赘述了。直达车:https://coredns.io/、https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns 二、 阅读全文
posted @ 2019-05-16 17:26 诗码者 阅读(7781) 评论(3) 推荐(1) 编辑
摘要:一、关于kong的详细内容这里不再赘述,可以查看官网。 kong升级到1.0以后功能越来越完善,并切新版本的kong可以作为service-mesh使用,并可以将其作为kubernetes的ingress-controlor。虽然在作为service-mesh方面与istio还有差异,但是kong的 阅读全文
posted @ 2019-04-19 18:20 诗码者 阅读(5541) 评论(0) 推荐(1) 编辑
摘要:一、概述 关于kubernetes使用私有docker image registry的一些说明: 1、对于自己构建的项目镜像或一些不想暴露到外网的image需要使用自建的私有仓库,一般有两种选择:docker registry v2、harbor 2、镜像仓都是做安全认证的,kubernetes在使 阅读全文
posted @ 2019-04-04 17:54 诗码者 阅读(1730) 评论(1) 推荐(1) 编辑
摘要:一、概述 测试环境已经跑了很长时间的istio了,也更新到了最新的istio-1.1。性能相较之前提升很大,官方给出的测试数据说是延迟降低到了8ms,但是实际测试确实访问速度有很大的提升,但是确实还是比直接访问pod速度差异很明显,sidecar的引入使数据流向变得层数更多,导致访问性能上的一些损耗 阅读全文
posted @ 2019-03-29 17:19 诗码者 阅读(977) 评论(0) 推荐(0) 编辑
摘要:一、概述 线上部署的k8s已经扛过了双11的洗礼,期间先是通过对网络和监控的优化顺利度过了双11并且表现良好。先简单介绍一下我们kubernetes的使用方式: 物理机系统:Ubuntu-16.04(kernel 升级到4.17) kuberneets-version:1.13.2 网络组件:cal 阅读全文
posted @ 2019-03-21 18:28 诗码者 阅读(4258) 评论(0) 推荐(0) 编辑
摘要:一、概述 前面我们部署calico由于集群规模不是很大,使用的是calico的bgp模式的node-to-node-mesh全节点互联,这种模式在小规模集群里面还可以用,3.4.0版本的calico支持到100多个节点。 但是随着集群规模的扩大,bgp的mesh会变得很混乱,因为node-to-no 阅读全文
posted @ 2019-01-24 16:28 诗码者 阅读(5021) 评论(0) 推荐(0) 编辑
摘要:一、概述 k8s暴露服务的方式有很多使用ingress、nodeport等,这类比较适用于无状态的服务,对于statefulset部署的有状态的服务,(关于statefulset的介绍参考kubernetes的官网或参考我的https://www.cnblogs.com/cuishuai/p/102 阅读全文
posted @ 2019-01-23 18:38 诗码者 阅读(5793) 评论(0) 推荐(0) 编辑
摘要:一、概述 kubernetes使用etcd作为数据中心,使用kubeadm部署kubernetes的时候默认会自己部署一个etcd,当然也可以将kubeadm部署的单点的etcd做成集群,但是比较麻烦,所以我们使用的是自建 的etcd集群即external etcd cluster。在使用kubea 阅读全文
posted @ 2019-01-17 17:38 诗码者 阅读(1652) 评论(0) 推荐(0) 编辑
摘要:一、概述 在k8s里面部署kafka、zookeeper这种有状态的服务,不能使用deployment和RC,k8s提供了一种专门用来部署这种有状态的服务的API--statefulset,有状态简单来说就是需要持久化数据,比如日志、数据库数据、服务状态等。 statefulset应用场景: 稳定的 阅读全文
posted @ 2019-01-09 11:27 诗码者 阅读(13161) 评论(6) 推荐(0) 编辑

点击右上角即可分享
微信分享提示