一、问题:k8s证书过期[root@nb001~]#kubectlgetnodeUnabletoconnecttotheserver:x509:certificatehasexpiredorisnotyetvalid:currenttime2022-12-10T10:26:21+08:00isafter2022-12-10T01:55:52Z二、解决方案:2.1处理步骤#备份kubernetes配置cp-r/etc/kubernetes/etc/kubernetes_bak#检测证书过期kubeadmcertscheck-expiration#更新证书kubeadmcertsrenewall2
通过systemstatuskubelet查看报错,基本没有什么有效信息,所以使用journalctl-xefukubelet就可以看到以下报错:Jan1620:49:17masterkubelet[3824]:I011620:49:17.402577 3824server.go:425]Version:v1.15.0Jan1620:49:17masterkubelet[3824]:I011620:49:17.402770 3824plugins.go:103]Nocloudproviderspecified.Jan1620:49:17masterkubelet[3824]:I011620
在安装完K8s后,默认会安装etcd组件,etcd是一个高可用的key-value数据库,它为k8s集群提供底层数据存储,保存了整个集群的状态。大多数情形下,数据库中的内容没有加密,因此如果黑客拿下etcd,就意味着能控制整个K8s集群。etcd未授权访问如果目标在启动etcd的时候没有开启证书认证选项,且2379端口直接对外开放的话,则存在etcd未授权访问漏洞。访问目标的https://IP:2379/version或https://IP:2379/v2/keys,看看是否存在未授权访问。如果显示如下,则证明存在未授权访问。1.查找token需要使用到etcd命令行连接工具:etcdctl
搭建K8S集群部署环境三台2核2G20G硬盘的服务器或虚拟机,文中使用的系统是centos7.9docker:19.03.15-3.el7kubernetes:1.23.6初始化操作关闭防火墙systemctlstopfirewalldsystemctldisablefirewalld关闭selinuxsed-i's/enforcing/disabled/'/etc/selinux/config关闭硬盘swap分区sed-ri's/.*swap.*/#&/'/etc/fstab完成初始化操作后重启服务器(虚拟机)根据规划设置主机名并修改/etc/hosts文件hostnamectlset-ho
CentOS7.9kubeadm安装K8S1.28.2master 192.168.2.191worker1 192.168.2.10一、设置master主机名、服务器初始化配置设置虚拟机IP、网关vi/etc/sysconfig/network-scripts/ifcfg-ens33servicenetworkrestartservicenetworkrestartserviceNetworkManagerstatusserviceNetworkManagerstopjournalctl-xeservicenetworkrestart#虚拟机ip地址被占用,network服务启动不了1
上篇文章记录了kubeadm工具搭建kubernetes集群的过程,本文记录K8S一些核心概念以及各个组件是如何协调工作的。1.K8S核心架构K8S采用了控制面/数据面(ControlPlane/DataPlane)架构,集群中的主机被称为节点,主机可以是物理机也可以是虚拟机。其中控制节点叫做master节点,数据节点叫做worker节点。worker节点工作是靠master节点进行管理和调度的,进入节点内部如下图所示。2.mater节点核心组件apiserver是Master节点中的一个组件,同时也是整个Kubernetes系统的唯一入口,它对外公开了一系列的RESTfulAPI,并且加上了
目录一、K8S的Service1、Service的作用2、Service类型:二、ingress1、ingress的组成:2、ingress资源的定义项:三、nginx-ingress-controller暴露服务端的方式1、Deployment+LoadBalancer模式:1、工作流程图:2、Daemonset+hostnetwork+nodeSelector模式:1、工作流程图2、实验:3、deployment+NodePort1、实验:4、通过虚拟主机的方式实现http代理5、ingress实现https代理访问:5.1、nginx的登录账户认证:5.2、nginx的重写:6、总结:四
service的作用体现在两个方面:集群内部:不断追踪pod的变化。他会更新endpoint中的pod对象,基于pod的IP地址不断变化的一种服务发现机制。集群外部:类似负载均衡器,把流量IP+端口,不涉及转发url(http、https)。把请求转发到pod当中。service有四种类型:ClusterIP:创建service的默认类型NodePort:容器端口>service端口>nodeport。设定了nodeport后,每个节点都会有一个端口被打开。端口范围:30000-32767。访问:节点ip+30000-32767实现负载均衡loadbalancer:云平台上的一种service
K8s的全称为Kubernetes,是一种开源的容器编排平台,用于自动化部署以及扩展和管理容器化的应用程序,它提供了一种容器编排和管理的方式,可以帮助开发人员更轻松的管理容器化的应用程序,并且提供了一种跨多个主机的自动化部署和管理机制作用: 用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。可以理解成K8S是负责自动化运维管理多个容器化程序(比如Docker)的集群,是一个生态极其丰富的容器编排框架工具。官网:https://kubernetes.iogithub:https://github.com/kubernetes/kubernets为什么要
Kubernetes是谷歌以Borg为前身,基于谷歌15年生产环境经验开源的一个项目。Kubernetes致力于提供跨主机集群的自动部署、扩展、高可用以及运行应用程序容器的平台,其遵循主从式架构设计,其组件可以分为工作节点(Node)组件和控制平面组件。KubernetesMaster是集群的主要控制单元,用于管理其工作负载并指导整个系统的通信。Kubernetes控制平面由各自的进程组成,每个组件都可以在单个主节点上运行,也可以在支持高可用集群的多个节点上运行。为什么要用Kubernetes很多人会有疑问,有Docker了为什么还用Kubernetes?在业务开始进行容器化时,前期需要容器化