kubernetes
文章平均质量分 95
强哥之神
格物致知
展开
-
K8S中编写自己的CRD及Controller简明指南
Table of Contents一、背景二、环境准备及基本开发流程1、Golang 环境搭建1.1 Golang 语言版本1.2 Golang 环境配置2、CRD Controller 开发环境搭建2.1、使用时的一些注意事项3、CRD Controller的开发逻辑4、CRD controller的测试与部署三、演示3.1 构架代码生成3.1.1 采用 GOPATH 来生成3.1.2 采用 go mod 来生成3.2 验证生成的代码3.2.1原创 2020-06-28 11:19:56 · 9463 阅读 · 2 评论 -
单条日志过长引发的 CLOSE-WAIT
一、背景部分租户称他们的某个业务部署在 K8S 容器平台后经常会重启,部分租户称另一个业务在运行一段时间时会产生大量的 CLOSE-WAIT,还有的就是业务跑着就会 hang 住。其实这三个问题,经过我们排查后,都是同一个问题引起,这也是我今天要分享的主题内容。二、分析过程大家都知道,重启我们不好查,因为原因太多了,比如:容器分配的内存不够会重启,运行中程序内存泄漏到将内存耗尽会重启;在 K8S 中配置了容器运行时健康检查时,如果条件未达到会重启等等;总之不好排查。那如果这三个问题有关联的话,那么原创 2020-06-23 21:18:54 · 598 阅读 · 0 评论 -
K8S开启默认的StroageClass
当集群中有多个storageclass时,一般需要指定一个默认的sc,这样可以自动的选择一个进行创建pvc。To enable dynamic storage provisioning based on storage class, the cluster administrator needs to enable the DefaultStorageClass admission contro...原创 2020-02-27 13:56:10 · 6348 阅读 · 2 评论 -
k8s Networkpolicy 多规则ipblock+port同时匹配测试
与egress为例,我们想要测试的是172.17.197.252网段的1234 TCP端口通以及172.16.247.58/24段的80TCP端口可以出去,其它不通测试的目的:1、验证是否ipblock+port同时满足时,才通。2、可以在networkpolicy中添加多条egress的ipblock+port区段,且不会聚合,即不会说172.17.197.252网段的80 TCP端口也可...原创 2019-02-26 18:29:39 · 2866 阅读 · 0 评论 -
k8s 如何关联pvc到特定的pv?
如何关联pvc到特定的pv?我们可以使用对 pv 打 label 的方式,具体如下:创建 pv,指定 label-[appuser@chenqiang-dev pvtest]$ cat nfs-pv2.yaml apiVersion: v1kind: PersistentVolumemetadata: name: nfs-pv2 namespace: chenqian...原创 2018-06-21 18:12:29 · 17720 阅读 · 6 评论 -
k8s 节点的 NodeAffinity 使用
在 k8s 中,pod 会通过 kube-scheduler 按照节占先有的资源平均的调度到这些节点上,但有时候,我们需要将某个应用的pod调度到特定的节点上, 比如:两个应用需要频繁的进行通讯,那么我们希望将它们部署到同一个节点。或者希望访问一些类似需要ssd这样特殊资源的节点等应用场景。最简单的方法是使用 nodeSelector,但它比较简单粗暴,使用起来不能灵活调度,这个在后续版本中...原创 2018-06-21 16:12:37 · 8069 阅读 · 0 评论 -
K8S NFS PV/PVC 使用实践
nfs 作为 k8s 的网络存储驱动,可以满足持久存储业务的需求,支持多节点读也写。 下面采用 k8s pv与pvc来配套使用nfs资源。 创建pv,并创建与之关联的pvc,如下:-[appuser@chenqiang-dev pvtest]$ kubectl get pvNAME CAPACITY ACCESS MODES RECLAIM POLICY...原创 2018-06-21 16:11:22 · 20806 阅读 · 0 评论 -
如何手动创建 k8s kubeconfig 文件以实现多环境切换
这篇文件简单介绍一下集群环境中如何配置kubectl,以及如何制作 kubeconfig 文件,以使用 kubectl config 来实现切换多种k8s环境,官方有相应的文档,这里简要介绍一下如何手动生成这个 config 文件。1、集群环境中如何配置kubectl (有集群登录权限)要实现 kubectl get no 这种以很少命令参数的方式获取到 k8s 集群信息,下面介绍一种...原创 2018-05-24 19:22:20 · 21967 阅读 · 3 评论 -
k8s https 认证部署配置相关总结
在创建pod时,经常会出现如下问题:E0522 15:22:33.202410 7 authentication.go:64] Unable to authenticate the request due to an error: [invalid bearer token, [invalid bearer token, crypto/rsa: verification error]]...原创 2018-05-22 21:15:51 · 11342 阅读 · 0 评论 -
calico 网络结合 k8s networkpolicy 实现租户隔离及部分租户下业务隔离
实现 namespace 之间多租户网络隔离我们经常需要按租户进行网络隔离,k8s 提供了 networkpolicy 来定义网络策略,从而实现网络隔离等。Network Policy 提供了基于策略的网络控制,用于隔离应用并减少攻击面。它使用标签选择器模拟传统的分段网络,并通过策略控制它们之间的流量以及来自外部的流量。但这个 networkpolicy 需要有第外方外接网络插件的支持,如Ca...原创 2018-05-21 12:46:57 · 5389 阅读 · 0 评论 -
Kubernetes v1.8.4 集群各组件加密认证功能的配置参考
记录 v1.8.4 的组件配置如下,经测试能完美地工作。这里 kube-apiserver 并没有做 HA ,先这个测试通过了,后面再做。ha 方面,只需要加上 haproxy+keepalived进行配置,使其以 <vip>:443的方式访问即可。haproxy负责负载转发, keepalived负责监控haproxy的ha。 haproxy和keepalived可以部署在三台master中的两原创 2017-12-08 10:41:32 · 1255 阅读 · 0 评论 -
容器云在万达的落地
大家晚上好!很荣幸在这里和大家分享一下万达的容器云落地经验。目前我在万达网络科技集团云公司负责 Kubernetes 与 Docker 的落地与实践工作。之前先后在 Intel、IBM 和爱奇艺工作过,在云计算领域长年搬砖,对 Mesos/Kubernetes/Docker 等有较深入的研究,希望有机会多多交流,下面开始分享。容器生态是现在非常火热的技术生态之一,个人认为它主要囊括着四个方面的技术栈原创 2017-09-22 10:45:51 · 963 阅读 · 0 评论