
k8s
文章平均质量分 50
weixin_50801368
这个作者很懒,什么都没留下…
展开
-
k8s之Horizontal Pod Autoscaler(Pod水平自动伸缩)
官方文档:Pod 水平自动扩缩 | Kuberneteshttps://kubernetes.io/zh/docs/tasks/run-application/horizontal-pod-autoscale/Pod 水平自动扩缩(Horizontal Pod Autoscaler) 可以基于 CPU 利用率自动扩缩 ReplicationController、Deployment、ReplicaSet 和 StatefulSet 中的 Pod 数量。 除了 CPU 利用率,也可以基于其他应程序提供原创 2022-02-15 16:12:02 · 1576 阅读 · 0 评论 -
k8s的两种网络插件flannel和calico
网络插件网络架构是k8s中较为复杂、让很多用户头疼的方面之一,k8s网络模型本身对某些特定的网络功能有一定要求,但在实现方面也具有一定的灵活性。因此,业界已有不少不同的网络方案,来满足特定的环境和要求下面是对常用的两个网络插件的简单介绍,方便记忆...原创 2022-01-14 16:51:54 · 975 阅读 · 1 评论 -
Knative初识
Knative原创 2022-01-08 17:30:30 · 887 阅读 · 0 评论 -
记一次nginx转发nodeport类型的svc遇到的坑
在k8s中创建了一个nodeport类型的svc由于这个端口需要可以在公网访问,而我的k8s集群部署在内网环境,所以需要用路由器做映射到公网,成功将服务映射到公网后,开发要求加https证书,但是加好证书之后界面报出426这个报错之前很少见到,百度查了一下是协议不同导致的,首先想到的就是http协议版本不同这时候将http版本升到1.1问题就解决了...原创 2022-01-08 17:08:07 · 698 阅读 · 0 评论 -
容器的设计模式
举例:如何将jar包容器化方法一:将jar包和jdk环境打包进一个镜像中缺点:每次更新都需要重新打包新的jar包方法二:镜像里只做jdk环境,通过共享存储的方式将jar挂载到容器中,再执行启动命令缺点:由于pod调度,需要单独维护一套网络存储系统那有没有方法可以同时解决这两个问题呢?initcontainer会比spec.containers定义的用户容器先启动,并且严格按照定义顺序依次执行容器设计模式:sidecar通过在pod定义专门容器,来执行住业务容器需要的辅..原创 2021-08-26 18:02:18 · 212 阅读 · 0 评论 -
容器与pod
容器的本质是一个视图被隔离、资源受限的进程容器里pid=1的进程就是应用本身管理虚拟机=管理基础设施;管理容器=管理应用本身k8s是云时代的操作系统,那么容器镜像其实就是这个操作系统的软件安装包那pod就是进程组举例:一个程序由4个进程组成,这些进程之间共享某些文件如果这个程序由一个容器跑起来,那么pid=1的进程就是应用本身,那么谁来管理剩余的三个进程呢?由于容器是单进程模型,pid=1的进程挂掉后,其他进程也会随之挂掉除非应用进程本身举报“进程管理”能力(这意味.原创 2021-08-26 16:01:17 · 414 阅读 · 0 评论 -
容器搭建naocs1.3.2并将数据存储到mysql中
docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server:1.3.2#运行一个nacos容器docker cp nacos:/home/nacos/conf ./ #将配置文件拷贝到本地docker rm -f nacos #删除容器#创建docker-compose文件vim docker-compose.ymlversion: '3.1'services: nginx: .原创 2021-06-25 11:57:49 · 220 阅读 · 1 评论 -
prometheus监控k8s(03)
prometheusserver搭建https://blog.youkuaiyun.com/weixin_50801368/article/details/118051802kube-state-metrics的安装vim cluster-role-binding.yamlapiVersion: rbac.authorization.k8s.io/v1kind: ClusterRoleBindingmetadata: labels: app.kubernetes.io/name: kub..原创 2021-06-21 16:35:57 · 152 阅读 · 0 评论 -
prometheus监控k8s(02)
node_exporter安装:https://blog.youkuaiyun.com/weixin_50801368/article/details/118051444原创 2021-06-19 12:15:17 · 169 阅读 · 0 评论 -
prometheus监控k8s(01)
prometheus的相关介绍这里就不做赘述了,不知道的同学可以自行百度,这里重要介绍利用prometheus对k8s的监控之前的文档里已经搭建好k8s集群,和k8s的原创 2021-06-19 11:54:05 · 205 阅读 · 0 评论 -
安装新版dashboard1.8.3
k8s自动化安装请参照文档:1.8.3配置文件参考官方文档 增加了通过api-server方式访问dashboard 增加了NodePort方式暴露服务,这样集群外部可以使用 https://NodeIP:NodePort (注意是https不是http,区别于1.6.3版本) 直接访问 dashboard,生产环境建议关闭该访问途 ...原创 2021-06-19 11:33:41 · 223 阅读 · 0 评论 -
ansible自动化部署k8s集群
| 192.168.1.151 | master || 192.168.1.152 | node01|| 192.168.1.152 | node03 |原创 2021-06-19 11:27:45 · 777 阅读 · 0 评论 -
traefik2灰度发布与流量控制
灰度发布Traefik2.0 的一个更强大的功能就是灰度发布,灰度发布我们有时候也会称为金丝雀发布(Canary),主要就是让一部分测试的服务也参与到线上去,经过测试观察看是否符号上线要求。我们需要创建两组pod,我们希望通过 Traefik 来控制我们的流量,将 3⁄4 的流量路由到 appv1,1/4 的流量路由到 appv2 去,这个时候就可以利用 Traefik2.0 中提供的带权重的轮询(WRR)来实现该功能,首先在 Kubernetes 集群中部署上面的两个服务。为了对比结果我们这里原创 2021-04-20 11:47:13 · 1628 阅读 · 0 评论 -
traefik应用
利用traefik使应用对外提供服务创建一组pod和对应的serviceapiVersion: v1kind: Servicemetadata: name: whoamispec: ports: - protocol: TCP name: web port: 80 selector: app: whoami ---kind: DeploymentapiVersion: apps/原创 2021-04-20 11:03:43 · 204 阅读 · 1 评论 -
traefik
Traefik介绍traefik是一个开源的可以使服务发布变得轻松有趣的边缘路由器,它负责接收你系统的请求,然后使用合适的组件来对这些请求进行处理特点:1、traefik的与众不同在于他会自动发现适合你服务的配置,当traefik在检查你的服务时,会找到服务的相关信息并找到合适的服务来满足对应的请求2、traefik兼容所有主流的集群技术,比如k8s,docker,dockerswarm,aws,mesos等等,并且可以同时处理多种方式使用 Traefik,不需要维护或者同步一个独.原创 2021-04-19 19:38:50 · 939 阅读 · 0 评论 -
docker日志时间不正确
dockerlogs容器名查看的日志总比宿主机的日志相差8小时,感觉是因为时区不对的原因version: "3"services: sh-user-center: container_name: sh-user-center restart: always image: 192.168.1.154/test/sh-user-center:v1 network_mode: host volumes: - /data/logs/paas/a..原创 2021-04-10 16:21:43 · 1349 阅读 · 0 评论 -
k8s之service
定义service是k8s的核心概念之一,通过创建service,可以为一组具有相同功能的容器应用提供一个统一的入口,并且将请求负载分发到后端的各个容器应用上。apiVersion: v1 #指定api版本kind: Service #创建的类型metadata: #元数据 name: string #service的名字 name原创 2021-04-10 13:50:25 · 363 阅读 · 0 评论 -
k8s控制器之deployment(2)
pod版本回退查看版本历史[root@master k8s]# kubectl rollout history deployment deployment-testdeployment.apps/deployment-testREVISION CHANGE-CAUSE1 kubectl set image deployment deployment-test deployment-test=nginx:1.16-alpine --record=true2原创 2021-03-19 18:01:44 · 197 阅读 · 0 评论 -
k8s控制器之deployment(1)
deployment用于部署无状态应用所有pod无差别原创 2021-03-19 17:45:32 · 503 阅读 · 0 评论 -
k8s之labels详解
一、标签是什么标签是k8s特色的管理方式,便于分类管理资源对象。一个标签可以对应多个资源,一个资源也可以有多个标签,它们是多对多的关系。一个资源拥有多个标签,可以实现不同维度的管理。可以使用标签选择器来指定能使用哪些标签。二、label使用label的使用无非就是增删改查查看node的lable标签[root@master ~]# kubectl get nodes --show-labelsNAME STATUS ...原创 2021-03-11 22:03:05 · 3287 阅读 · 0 评论 -
Dockerfile文件详解
什么是dockerfile用来构建docker镜像的文件,命令参数脚本构建步骤1、编写一个dockerfile文件2、docker build构建成为一个镜像3、docker run 运行一个镜像成为容器4、docker push 发布镜像指令1、每个保留关键字(指令)都是必须是大写字母2、执行从上到下顺序执行3、#表示注释4、每一个指令都会创建提交一个新的镜像层,并提交FROM #基础镜像MAINTAINER #维护者信息RUN原创 2021-02-28 19:39:34 · 77 阅读 · 0 评论 -
docker网络
同一台宿主机下容器之间是如何通信的?当我们安装好docker就会出现一个docker0的网络,这里的docker0就是一个路由转发的功能,docker0与宿主机网卡是直连模式,ip就是所有容器下的网关,我们每启动一个docker容器,docker就会给docker容器分配一个ip,我们只要安装了docker, 就会有一个网卡docker0桥接模式,使用的技术是evth-pair技术evth-pair技术 就是一对的虚拟设备接口,他们都是成对出现的,一段连着协议,一端彼此相连 正因为这个特性,ev原创 2021-02-18 15:57:11 · 102 阅读 · 0 评论 -
docker基础命令
docker 帮助命令docker version #显示docker的信息 dcoker info #显示docker的系统信息docker help #docker名称查询docker镜像命令docker images #查看镜像[root@localhost ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEjava 8 d2原创 2021-02-09 08:11:12 · 96 阅读 · 0 评论 -
controller-manager类型及其作用
controller-manager介绍原创 2021-01-31 17:13:23 · 2277 阅读 · 0 评论 -
k8s组件和pod的介绍
k8s介绍k8s是全称kubernetes,k和s之间由8个字母组成,所以简称k8s(这个也是看其他人这么说的,不知道真的假的)它是由谷歌的borg架构演变过来的属于borg架构的开源版特点:轻量级,消耗资源小(go语言编写)弹性伸缩负载均衡开源高可用k8s组件master端APIserver:所有服务访问统一的入口,负责各个组件直接相互通信crontrollermanager:控制器,维持副本期望数目(控制器的类型有很多,后面会详细介绍)schedu原创 2021-01-25 17:49:14 · 633 阅读 · 1 评论