k8s专题
文章平均质量分 70
k8s专题
开开136
一路向前,莫问前程
展开
-
kubernetes 网络callico和flannel两种网络
一、flannel网络1.介绍Flannel是CoreOS团队针对Kubernetes设计的一个网络规划服务,简单来说,它的功能是让集群中的不同节点主机创建的Docker容器都具有全集群唯一的虚拟IP地址。Flannel的设计目的就是为集群中的所有节点重新规划IP地址的使用规则,从而使得不同节点上的容器能够获得“同属一个内网”且”不重复的”IP地址,并让属于不同节点上的容器能够直接通过内网IP通信。Flannel实质上是一种“覆盖网络(overlaynetwork)”,也就是将TCP数据包装原创 2021-10-21 12:21:59 · 1149 阅读 · 2 评论 -
CoreDNS系列:Kubernetes内部域名解析原理、弊端及优化方
Kubernetes 中的 DNS本篇,是 CoreDNS 的前篇之一,后续会着重介绍 CoreDNS,但是步步深入讲 CoreDNS,讲一下 Kubernetes,以及 kubedns 有一定的必要,所以,就有了 CoreDNS 系列,本篇主要尽可能详尽的说明 Kubernetes 的DNS解析原理,以及 Kubernetes 集群中 DNS 解析目前存在的弊端和优化方式。在 Kubernetes 中,服务发现有几种方式:①:基于环境变量的方式②:基于内部域名的方式基本上,使用环境变量的方原创 2021-10-19 18:39:31 · 1326 阅读 · 0 评论 -
Kubernetes对资源的限制
配置容器资源限制对于一个pod来说,资源最基础的2个的指标就是:CPU和内存。Kubernetes提供了个采用requests和limits 两种类型参数对资源进行预分配和使用限制。limit 会限制pod的资源利用:当pod 内存超过limit时,会被oom。 当cpu超过limit时,不会被kill,但是会限制不超过limit值。其中,CPU 有2个限制:requests:相对限制,是容器的最低申请资源,这个限制是相对的,无法做到绝对严格。 limits:绝对限制,这个是限制的..原创 2021-10-20 17:00:10 · 1014 阅读 · 0 评论 -
Helm部署安装
安装Helm的客户端下载地址https://github.com/helm/helm/releases/解压移动到/usr/local/bin目录下mv linux-amd64/helm /usr/local/bin/ 添加执行权限chmod +x /usr/local/bin/helm测试使用可以使用(获取客户端的版本号)helm version命令自动补全echo "source <(helm completion bash)" >> .原创 2021-08-19 14:49:26 · 127 阅读 · 0 评论 -
kubernestes Helm
Helm 提供了几种安装方式,本文提供两种安装方式,想要查看更多安装方式,请阅读 Helm 的官方文档:目前最新稳定版为:2.16.6通过 Helm 的github项目下找到你想要的 Helm 版本的二进制,然后通过手动安装方式一样安装即可wget https://get.helm.sh/helm-v2.16.6-linux-amd64.tar.gztar zxvf helm-v2.16.6-linux-amd64.tar.gz -C /usr/src/cp /usr/src/linu..原创 2021-06-16 09:30:36 · 179 阅读 · 0 评论 -
kubernetes ingress 使用
一、更改NodePort端口范围kubeadm 更改NodePort端口范围kubernetes默认端口号范围是 30000-32767 ,如果期望值不是这个区间则需要更改。vim /etc/kubernetes/manifests/kube-apiserver.yaml编辑添加配置 service-node-port-range=1-65535保存后,稍等10秒左右会自动生效二、部署ingress插件ingress 官网https://kubernetes.gi..原创 2020-12-01 17:15:32 · 517 阅读 · 0 评论 -
kubeadm 安装1.18.3 和1.17.2版本k8s
一、系统初始化cat > init.sh << EOF#!/bin/bash# 配置主机名解析init_hosts(){cat >> /etc/hosts << EOF192.168.99.34 master192.168.99.35 node1192.168.99.36 node2EOFecho -e "\033[32m [主机解析] ==> OK \033[0m"}init_base(){ yum install -y原创 2020-11-26 17:48:46 · 765 阅读 · 0 评论 -
k8s--pod的状态为evicted
原因eviction,即驱赶的意思,意思是当节点出现异常时,kubernetes将有相应的机制驱赶该节点上的Pod。多见于资源不足时导致的驱赶。解决方案排查资源和异常原因,防止新的驱赶产生。使用如下命令删除旧驱赶的遗留kubectl get pods | grep Evicted | awk ‘{print $1}’ | xargs kubectl delete pod#!/bin/bashfor pod in $(kubectl get pods|grep Evicted|.原创 2020-11-18 17:10:41 · 276 阅读 · 0 评论 -
kubernetes pod调度策略
Toleration(容忍)Tain(污点)和label(标签)1、NoSchedule:K8Snode添加这个effecf类型污点,新的不能容忍的pod不能再调度过来,但是老的运行在node上不受影响2、NoExecute:K8Snode添加这个effecf类型污点,新的不能容忍的pod不能调度过来,老的pod也会被驱逐3、PreferNoSchedule:pod会尝试将pod分配到该节点Affinity(亲和性)1、硬亲和:2、软亲和原创 2020-09-04 11:37:06 · 747 阅读 · 0 评论 -
kubernetes 二进制部署
kubernetes的五个组件master节点的三个组件kube-apiserver 整个集群的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制。kube-controller-manager控制器管理器负责维护集群的状态,比如故障检测、自动扩展、滚动更新等。保证资源到达期望值。kube-scheduler调度器经过策略调度POD到合适的节点上面运行。分别有预选策略和优选策略。node节点的两个组件kubelet在集群节点上运行的代理,kubelet会通过各原创 2020-08-27 15:30:53 · 1127 阅读 · 0 评论 -
kubernete 服务暴露
详细https://mritd.me/2016/12/06/try-traefik-on-kubernetes/https://mritd.me/2017/03/04/how-to-use-nginx-ingress/原创 2020-08-24 15:29:30 · 130 阅读 · 0 评论 -
kubectl 命令详解与使用
管理k8s核心资源的三种基本方法陈述式管理方法---主要依赖命令行工具CTL进行管理 声明式管理方法---主要依赖统一资源配置清单(manifest) 进行管理 GUI式管理方法 --- 主要依赖图形化界面(web页面)进行管理查名字空间查看命名空间kubectl get namespaces kubectl get ns查看命名空间详细信息kubectl get all [-n default]创建名字空间kubectl create ns ap...原创 2020-08-20 19:49:06 · 3730 阅读 · 0 评论 -
kubernetes
一、发展历史Infrastructure as a Service 阿里云platform as a service (新郎云)平台级服务(免运维)Software as a Service office365(软件级bs)Apache MESOS 分布式资源管理器 2019-5 Twitter ---> KubernetesDocker Swarm 集群化管理容器 2019-7 阿里云宣布 剔除kubernetes google...原创 2020-08-06 20:03:36 · 696 阅读 · 0 评论