Calico

kubeadm安装kubernets集群

佐手、 提交于 2021-02-12 13:04:17
双12弄了两台腾讯云和百度云机器,组建k8s集群时需要服务器间组成内网环境; 在服务器组成内网后就可以安装kubernets集群了 因只是自己实验需要,所以服务器使用openxxx跨云组建的内网,各位在安装的时候建议还是使用同一内网环境,并使用2v4G以上服务器推介配置 大家的系统环境及各种安装包尽量使用同一个版本 备注:因为我的内网环境和普通的略有不通,所以初始化集群的时候及安装网络插件的时候,需要额外的操作,强烈建议大家即使是实验也请组成二层的内网网络环境来搭建K8S, 1,服务器环境: 软件版本 Kubernetes v1.17.0 Docker version 19.03.5   master:     腾讯云1V2g,CentOS Linux release 7.5.1804 (Core)     公网IP:x.x.x.x     内网IP:172.16.10.9     局域网IP:100.100.100.1     hostname:shiji.com   node1:     百度云1v2g,CentOS Linux release 7.6.1810 (Core)         公网IP:x.x.x.x     内网IP:172.16.0.4     局域网IP:100.100.100.3     hostname:node1 2

k8s学习-一次ubernetes ApiServer 不能访问到 metrics-server问题

泄露秘密 提交于 2021-02-02 14:53:44
在使用kuboard学习k8s的时候,突然发现资源不能调度。如下所示: 出现了这个问题真是百思不得其解。 按照问题解决办法。逐步检查可能的问题: 确认 metrics-server 是否正常运行 Metrics server 是 Kubernetes 中的一个重要组件,但是却不是内置组件。Kubernetes 许多特性都依赖于 metrics server, kubectl top nodes / kubectl top pods 指令,查看节点/容器组的资源利用率; Kuboard 集群概览页显示节点资源利用率; HPA 水平自动伸缩,依据节点/容器组资源利用率情况自动执行水平伸缩; 当 metrcis-server 出现异常时,相关依赖组件都会受到影响,例如: 在安装了kubectl的客户端或者master节点上检查: # kubectl top nodes Error from server (ServiceUnavailable): the server is currently unable to handle the request (get nodes.metrics.k8s.io) 进入容器检查metrics-server状态 状态显示无异常。进入日志查看 也无异常输出 基本断定 metrics-server无异常 确认 ApiService 是否正常 出现这个错误

各大主流K8S服务全方位能力比对

本秂侑毒 提交于 2021-01-30 00:52:10
大家好, 趁打开流量主的东风,特此贡献一篇长文,分析一下目前国内国外几大著名云厂商的kubernetes服务,以飨诸君。 文起之前,先聊态度。 我本人是十分看好k8s的发展的,为何? 理因古往今来,能给资本家省钱,能给企业省资源,能把人全栈化,能把业务自动化的玩意,肯定是会受追捧的。君不见docker兴起之时,mesos启势之际,到k8s一统天下。国内企业,技术人员已经有能力消化和适用K8S这类理念和框架了,其带来的好处和收益或许不亚于pc时代的linux服务器,故而有人称之为云时代的linux系统,鄙人确也深以为然。他有啥好处?看起来其实十分简单: scaling: k8s直接按需扩展pods recovery:k8s帮你监管pods,出问题了自动修复 monitoring:k8s包含了很多监控能力 free: k8s是免费的 easy&fast:部署应用贼快贼方便,ci/cd集成容易 然而,K8S是银弹(silver bullet)吗? 显然不是。 我一直强调其是一种理念,开发架构部署时的理念,原则上,你需要具备应用现代化,云原生化,DDD的能力,才能更好结合K8s帮助企业应用数字化转型。通过将业务模型和软件架构改造,配合k8s来做,这才是正确的使用方式。 你问我一个简单的CMS或者企业内部应用sap的,Oracle,需要K8S么? 我只能说可能不适合。语言,框架,开源软件

kubernetes 安装笔记

放肆的年华 提交于 2021-01-15 06:33:28
ssh -p 9000 root @127.0.0.1 192.168.56.101 master-node 192.168.56.102 work-node1 192.168.56.103 work-node2 由于kubeadm 默认从官网k8s.grc.io下载所需镜像,国内无法访问,因此需要通过–image-repository指定阿里云镜像仓库地址。 kubeadm init --kubernetes-version=1.18.0 --apiserver-advertise-address=192.168.56.101 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.10.0.0/16 --pod-network-cidr=192.168.0.0/16 To start using your cluster, you need to run the following as a regular user: mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config You

BIRD is not ready: BGP not established

本秂侑毒 提交于 2021-01-02 11:06:45
前言 最近在私有云部署一套环境;安装完k8s后遇到网络不通问题,通过查找记录问题解决方案;在此记录方便大家参考; 问题及解决方案 基本环境 CentOS版本 7.9.2009 k8s版本 1.17.16 k8s安装方式 kuboard 问题 在虚拟主机ping不通pod的ip;pod之间也访问不到 排查思路 查看pod的运行情况(其中calico模块 Ready状态为0/1说明有问题) kubectl get pod -n kube-system -o wide 查看calico模块日志 kubectl describe pods calico-node-hzsff -n kube-system 错误日志 BIRD is not ready: BGP not established 查找相关解决方案 # calico.yaml 文件添加以下二行 - name: IP_AUTODETECTION_METHOD value: "interface=ens.*" # ens 根据实际网卡开头配置 查找calico.yaml 通过kuboard安装的init_master.sh找到 将calico-3.13.1.yaml下载到本地进行更改 在服务器上执行脚本 kubectl apply -f calico-3.13.1.yaml 执行后查看pod发现已经好了

Kubernetes-整体概述和架构

我是研究僧i 提交于 2020-12-25 07:23:41
↑点击上方 “ kubernetes中文社区 ” 关注我们 1、Kubernetes是什么 Kubernetes是一个轻便的和可扩展的开源平台,用于管理容器化应用和服务。通过Kubernetes能够进行应用的自动化部署和扩缩容。在Kubernetes中,会将组成应用的容器组合成一个逻辑单元以更易管理和发现。Kubernetes积累了作为Google生产环境运行工作负载15年的经验,并吸收了来自于社区的最佳想法和实践。Kubernetes经过这几年的快速发展,形成了一个大的生态环境,Google在2014年将Kubernetes作为开源项目。Kubernetes的关键特性包括: 自动化装箱 :在不牺牲可用性的条件下,基于容器对资源的要求和约束自动部署容器。同时,为了提高利用率和节省更多资源,将关键和最佳工作量结合在一起。 自愈能力: 当容器失败时,会对容器进行重启;当所部署的Node节点有问题时,会对容器进行重新部署和重新调度;当容器未通过监控检查时,会关闭此容器;直到容器正常运行时,才会对外提供服务。 水平扩容 :通过简单的命令、用户界面或基于CPU的使用情况,能够对应用进行扩容和缩容。 服务发现和负载均衡 :开发者不需要使用额外的服务发现机制,就能够基于Kubernetes进行服务发现和负载均衡。 自动发布和回滚 :Kubernetes能够程序化的发布应用和相关的配置

k8s 主流网络方案(OVS、Flannel、Calico)及原理

蹲街弑〆低调 提交于 2020-12-23 08:27:52
同宿主机容器间通信通过网桥。 第一种方式,外层写宿主机信息 每个宿主机会启动一个FLANNELD进程,通过请求etcd获得宿主机寄容器IP对应关系,每台宿主机都有Flannel1的网卡,容器向外发数据吧都要经过flannel1进行发送。 calico BGP Speaker:路由广播 Felix:路由配置 实现动态路由 IPIP模式: 来源: oschina 链接: https://my.oschina.net/u/4405936/blog/4830544

kubeadm 安装 kubernetes

五迷三道 提交于 2020-12-23 03:14:24
kubeadm 是 Kubernetes 主推的部署工具之一,正在快速迭代开发中,当前版本为 GA,暂不建议用于部署生产环境,其先进的设计理念可以借鉴。 一、kubeadm 原理介绍 kubeadm 会在初始化的机器上首先部署 kubelet 服务,kubelet 创建 pod 的方式有三种,其中一种就是监控指定目下(/etc/kubernetes/manifests)容器状态的变化然后进行相应的操作。kubeadm 启动 kubelet 后会在 /etc/kubernetes/manifests 目录下创建出 etcd、kube-apiserver、kube-controller-manager、kube-scheduler 四个组件 static pod 的 yaml 文件,此时 kubelet 监测到该目录下有 yaml 文件便会将其创建为对应的 pod,最终 kube-apiserver、kube-controller-manager、kube-scheduler 以及 etcd 会以 static pod 的方式运行。 本次安装 kubernetes 版本:v1.12.0 当前宿主机系统与内核版本: $ uname -r 3.10 .0 -514.16 .1 .el7.x86_64 $ cat /etc/redhat-release CentOS Linux

kubernetes概述-介绍、组件、架构

此生再无相见时 提交于 2020-12-19 04:18:59
前言 kubernetes项目的github地址: https://github.com/ https://github.com/kubernetes/kubernetes kubernetes的官方站点: https://kubernetes.io/ https://kubernetes.io/docs/ kubernetes基本介绍 1.kubernetes是什么? Kubernetes是一个开源的容器管理平台,简称k8s,用于管理多个主机上的容器化应用程序;提供应用程序的快速部署,维护和扩展的基本机制;Kubernetes提供了应用程序的快速部署、扩缩容,升级的能力,利用service可以实现服务注册和发现以及转发,通过ingress可以实现七层负载均衡等功能;Kubernetes这个名字源于希腊语,意思是舵手或飞行员。谷歌在2014年开放了Kubernetes项目.Kubernetes建立在谷歌拥有大量运行生产工作量的十五年经验的基础上,结合了社区中的最佳创意和实践,社区活跃度很高。 2.kubernetes容器编排工具的优势 1)灵活部署 kubernetes支持在多种平台部署,支持私有云,公有云,混合云下部署 2)安全高效 rbac 3)负载均衡 service四层负载均衡 ingress七层负载均衡 3.kubernetes的功能 1)多租户网络隔离

kubernetes(k8s)集群安装calico

*爱你&永不变心* 提交于 2020-12-17 04:26:13
添加hosts解析 cat /etc/hosts 10.39.7.51 k8s-master-51 10.39.7.57 k8s-master-57 10.39.7.52 k8s-master-52 下载calico wget http: //docs.projectcalico.org/v3.2/getting-started/kubernetes/installation/hosted/calico.yaml 下载所需镜像 # 建议下载后 推到自己的镜像仓库 [root@k8s-master- 51 ~] # cat calico.yaml |grep image image: quay.io/calico/ node:v3. 2.4 image: quay.io/calico/ cni:v3. 2.4 image: quay.io/calico/kube- controllers:v3. 2.4 配置etcd的ip etcd_endpoints: "https://10.39.7.51:2379,https://10.39.7.52:2379,https://10.39.7.57:2379" 根据注释添加相关值 # If you're using TLS enabled etcd uncomment the following. # You must also