kubernetes集群:nacos搭建
kubernetes集群:nacos搭建
根据官网搭建失败后(失败原因详细见https://www.cnblogs.com/zoujiaojiao/p/12558946.html)。参考http://www.fengzhihai.cn/2020/03/17/k8s-nacos/重新搭建了一遍。搭建k8s集群1个多月,一直在学习中。有不足的请看客指出。
文件说明
custom.properties
server.servlet.contextPath=/nacos
...
kubernetes中pod间的通信
我们如果创建了一些pod,那么它们之间是怎么通信的呢?因为pod的ip地址是有可能变化的,这里我们主要讨论几个场景
同一网络下的不同pod间是怎么通信的?
同一个pod中不同的容器是怎么通信的?
不同的网络下不同的pod是怎么通信的?
一、同一网络下的不同pod间通信
第一种场景可能是应用最多的场景,比如我写了一个web应用 ...
Kubernetes中nodeport,port,targetport对比
参考:https://blog.csdn.net/yjk13703623757/article/details/79819415
Kubernetes中容易混淆的几个port
1.nodePort
外部流量访问k8s集群service入口的一组方式(另一种方式是LoadBalaner),即nodeIP:nodePort是提供给外部流量访问k8s集群中service的入口。
比如外部用户要访问k8s集群中的一个Web应 ...
031.Kubernetes核心组件-kubelet
一 kubelet概述
1.1 kubelet作用
在Kubernetes集群中,在每个Node(又称Minion)上都会启动一个kubelet服务进程。该进程用于处理Master下发到本节点的任务,管理Pod及Pod中的容器。每个kubelet进程都会在API Server上注册节点自身的信息,定期向Master汇报节点资源的使用情况,并通过cAdvisor监控容器和节点资源。
二 节点 ...
Kubernetes之使用ConfigMap配置Pod
官方参考:https://kubernetes.io/zh/docs/tasks/configure-pod-container/configure-pod-configmap/
创建ConfigMap
可以在 kustomization.yaml 中使用 kubectl create configmap 或 ConfigMap 生成器来创建ConfigMap。注意,从 1.14 版本开始, kubectl 开始支持 kust ...
Kubernetes—配置管理ConfigMap
1 ConfigMap介绍
1.1 概述
在部署应用程序时,我们都会涉及到应用的配置,在容器中,如Docker容器中,如果将配置文件打入容器镜像,这种行为等同于写死配置,每次修改完配置,镜像就得重新构建。当然,我们也可以通过挂载包含该文件的卷进行配置管理和修改。而在k8s中,我们要讲一种更好的方式,即ConfigMap,这种资源 ...
Kubernetes Jenkins动态创建Slave
目录0、前言1、Jenkins部署2、配置jenkins动态slave3、dubbo服务构建3.1、制作dubbo镜像底包3.2、制作slave基础镜像3.2.1、Maven镜像3.2.2、Docker镜像3.3、添加git key3.4、创建dubbo流水线3.5、执行流水线构建
0、前言
首先,我们考虑个问题,为何需要jenkins slave?其实在生产环境中,如果用单master,除非你单机器的配 ...
Kubernetes-服务连接和暴露(endpoints资源)
1 endpoint
1.1 endpoint介绍
服务和pod不是直接连接,而是通过Endpoint资源进行连通。endpoint资源是暴露一个服务的ip地址和port的列表。
选择器用于构建ip和port列表,然后存储在endpoint资源中。当客户端连接到服务时,服务代理选择这些列表中的ip和port对中的一个,并将传入连接重定向到在该位置监听的服务器。 ...
Kubernetes 网络架构及相关网卡
前言
因为 Kubernetes 的网络可以使用第三方网络插件,所以给我们提供了多样化的网络解决方案,让我们可以根据自身情况选择自己需要的网络方案。
CNM & CNI 阵营:
容器网络发展到现在,形成了两大阵营,就是 Docker 的 CNM 和 Google、CoreOS、Kuberenetes 主导的 CNI。首先明确一点,CNM 和 CNI 并不是网络实现,他们是 ...
K8s 开船记-全站登船:Powered by .NET Core on Kubernetes
今天 18:30 左右,我们迈出了 kubernetes 航行的关键一步——全站登船,完成了全站应用部署从 docker swarm 集群向 k8s 集群的切换,以前所未有的决心与信心重新开起这艘巨轮,而这次航行能否成功就看明天访问高峰时狂风巨浪下的表现。
部署在 k8s 上的应用会在页脚显示下面的信息,如果航行失败,"Kubernetes" 会变成 "Li ...
记一次kubernetes驱逐踩坑
最近在公司的线上服务器上发现了一个现象: 将某个node的kubelet短暂的停掉之后,其上的pod马上会被驱逐,这让笔者大吃一惊,印象之中,停掉kubelet后,该node会变为NotReady状态,随后controller-manger会经过一段时间才开始驱逐其上的pod。还有个参数专门来控制这个时间:
--pod-eviction-timeout The grace period for ...
见异思迁:K8s 部署 Nginx Ingress Controller 之 kubernetes/ingress-nginx
前天才发现,区区一个 nginx ingress controller 竟然2个不同的实现。一个叫 kubernetes/ingress-nginx ,是由 kubernetes 社区维护的,对应的容器镜像是 quay.io/kubernetes-ingress-controller/nginx-ingress-controller ,namespace 是 ingress-nginx ;一个叫 nginxinc/kubernetes-ingress ,是由 nginx 公司与社区共同 ...
Kubernetes in Action中文版.pdf 观后笔记 一
一. K8S 介绍
Kubernetes 是一个自动调度(位置)、配置(资源)、监管和故障处理 微服务容器的系统。
说到为何推广微服务,就要说说单体应用的危害:
扩容复杂(通常垂直扩容)
环境依赖复杂(动态链接库版本太多)
开发语言不灵活
迁移成本巨大(环境难统一)
原文地址 https://www.cnblogs.com/clockq/p/12283169.html ...
kubernetes快速入门
kubernetes快速入门
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.API Server客户端命令工具kubectl使用入门
1>.查看kubectl命令的帮助信息
[root@master200.yinzhengj ...
Kubernetes 部署 Nginx Ingress Controller 之 nginxinc/kubernetes-ingress
更新:这里用的是 nginxinc/kubernetes-ingress ,还有个 kubernetes/ingress-nginx ,它们的区别见 Differences Between nginxinc/kubernetes-ingress and kubernetes/ingress-nginx Ingress Controllers ,后来我们选用了 kubernetes/ingress-nginx ,详见博文。
开始天真地以为只要写一个 ingress 配置文件并部署好就行 ...
kubernetes集群证书更新
kubeadm 默认证书为一年,一年过期后,会导致api service不可用,使用过程中会出现:x509: certificate has expired or is not yet valid.
方案一 通过修改kubeadm 调整证书过期时间
修改代码,调整过期时间
方案二 通过自动轮换证书默认开启
以下方案通过第二种方法模拟集群证书过期
准备
本次集群版本1.15
备份集群证书 ...
kubernetes之Pod分配到指定Node
简介
此文主要讲述如何将Pod分配到指定Node节点
备注:此文档参考官方文档,并加以自己的理解。如有误导性的内容,请批评指正。
给Node添加标签
1、查看当前集权中,所有node的标签
# kubectl get nodes --show-labels
输出结果如下:
NAME STATUS ROLES AGE VERSION LABELS
k8s-master01 Ready ...
kubernetes之容器健康状态检测
简介
此文讲述如何配置容器的liveness、readiness、startup探针。
kubelet 使用liveness探测器来知道什么时候要重启容器。例如,liveness探测器可以捕捉到死锁(应用程序在运行,但是无法继续执行后面的步骤)。这样的情况下重启容器有助于让应用程序在有问题的情况下更可用。
kubelet 使用readiness探测器可以知道容器什么 ...
终于成功部署 Kubernetes HPA 基于 QPS 进行自动伸缩
昨天晚上通过压测验证了 HPA 部署成功了。
所使用的 HPA 配置文件如下:
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: blog-web
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: blog-web
minReplicas: 2
maxReplicas: 8
metrics:
- ...
013.Kubernetes认证授权
一 Kubernetes认证系统介绍
1.1 访问控制
Kubernetes API的每个请求都会经过多阶段的访问控制之后才会被接受,这包括认证、授权以及准入控制(Admission Control)等
1.2 认证
在集群开启TLS后,客户端发往Kubernetes的所有API请求都需要进行认证,以验证用户的合法性。
Kubernetes支持多种认证机制,并支持同时开 ...