草庐IT

k8s-Kubernetes

全部标签

数据库不应放在容器中?- B站Kubernetes有状态服务实践(Elasticsearch/Clickhouse)

本期作者前言云原生时代下,Kubernetes已成为容器技术的事实标准, 使得基础设施领域应用下自动化运维管理与编排成为可能。对于无状态服务而言, 业界早已落地数套成熟且较完美的解决方案。可对于有状态的服务, 方案的复杂度就以几何倍数增长, 例如分布式应用多个实例间的依赖关系(主从/主备),数据库应用的实例依赖本地盘中存储的数据(实例被干掉, 丢失实例与本地盘中数据的关联关系也会导致实例重建失败)。多种原因导致有状态的应用一度成为了容器技术圈子的禁忌话题, 直到目前, 有状态的服务是否适合放置在容器中并交由K8s编排托管(例如生产环境的数据库)的话题依然争论不止。本文基于Elasticsear

java - 以编程方式获取容器在 Kubernetes 中所属的 Pod 的名称?

有没有办法以编程方式获取容器在Kubernetes中所属的Pod的名称?如果是这样怎么办?我正在使用fabric8的java客户端,但curl或类似的东西也可以。请注意,从那时起我不想使用特定标签找到pod(我假设)如果使用复制Controller进行缩放,我可能并不总能找到正确的pod。 最佳答案 您可以告诉Kubernetes使用downwardAPI将pod名称放入您选择的环境变量中.例如:apiVersion:v1kind:Podmetadata:name:dapi-test-podspec:containers:-name

掌握 Kubernetes 故障排除技巧:kubectl命令的基本指南

Kubernetes彻底改变了容器编排,简化了应用程序的管理和扩展。然而,与任何复杂系统一样,Kubernetes集群也会遇到问题,需要及时解决才能保持最佳性能和可靠性。在本文中,我们将深入探讨必要的kubectl命令,这些命令是诊断和排除Kubernetes集群问题不可或缺的工具。无论您是新手还是经验丰富的Kubernetes用户,掌握这些命令都将使您有能力驾驭错综复杂的容器编排,确保应用程序的健康。 查看集群记录报告排除Kubernetes集群故障的第一步是检查其中发生的事件。kubectlgetevents--all-namespaces命令能全面查看所有命名空间的事件,让您发现与pod

CentOS 7.9 环境下搭建k8s集群(一主两从)

目录一、硬件准备(虚拟主机)二、环境准备1、所有机器关闭防火墙2、所有机器关闭selinux3、所有机器关闭swap4、所有机器上添加主机名与ip的对应关系5、在所有主机上将桥接的ipv4流量传递到iptables的链三、为所有节点安装docker四、集群部署1、为所有节点修改仓库,安装kubeadm、kubelet、kubectl2、修改docker的配置(所有节点)3、部署master节点(主节点k8s-master)(1)、遇到报错:(2)、解决办法:4、按照指示执行:5、查看kubelet.service状态6、查看节点状态为notready7、安装网络插件,官方文档:https://

k8s搭建(详细演示完整一篇)

天行健,君子以自强不息;地势坤,君子以厚德载物。每个人都有惰性,但不断学习是好好生活的根本,共勉!文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。文章目录一、环境准备1.系统类型2.系统要求3.系统配置二、Docker安装1.安装Docker1.1更新安装包1.2安装依赖1.3获取证书1.4添加仓库1.5再次更新安装包1.6安装docker2.配置镜像加速器(不配也行,建议配一下)3.开启Docker3.1查看docker状态3.2重启docker3.3开机自启三、K8S组件安装1.组件介绍2.再次确保关闭ufw和swap2.1关闭防火墙2.2查看防火墙状态2.3查看交换内存

k8s配置与存储

k8s配置与存储学习1配置管理-ConfigMapConfigMap是一种以键值对形式存放配置的文件。1.1ConfigMap的创建1)ConfigMap的创建方式。(官方提供了5种创建方式,如下图所示)#1使用以下命令可以查看创建ConfigMap配置文件的方法kubectlcreateconfigmap-h2)ConfigMap第一种创建方式。(这种方式可以创建一个目录下的多个配置文件)#2第一种方法主要是按配置文件路径来创建ConfigMap配置文件#2.1首先创建一个test文件夹mkdirtestcdtest#2.2创建2个配置文件,并写入简单的配置内容vimmysql.yamlho

云计算项目九:K8S安装

K8S安装Kube-master安装按照如下配置准备云主机防火墙相关配置:禁用selinux,禁用swap,且在firewalld-*。上传kubernetes.zip到跳板机配置yum仓库(跳板机)跳板机主机配置k8s软件源服务端[root@js~]#yum-yinstallvsftpd[root@js~]#mkdir/var/ftp/localrepo[root@js~]#systemctlrestartvsftpd[root@js~]#cdproject3/jumpserver/[root@jskubernetes]#cp-av1.17.6/k8s-install//var/ftp/lo

基于ubuntu2204使用kubeadm部署k8s集群

部署k8s集群基础环境配置安装container安装runc安装CNI插件部署1.24版本k8s集群(flannel)安装crictl使用kubeadm部署集群节点加入集群部署flannel网络配置dashboard本集群基于ubuntu2204系统使用kubeadm工具部署1.24版本k8s,容器运行时使用containerd(官方推荐),网络插件会选择使用flannel(适用小型集群)calico(适用大型复杂集群)主机名IP机器资源master192.168.200.1706G_6C_150Gworker01192.168.200.1716G_6C_150Gworker02192.168

18-k8s控制器资源-cronjob控制器

    job控制器是执行完一次任务,就结束;    cronjob控制器,是基于job控制器,定期频率性执行任务;等同于linux系统中的crontab一样;1,编辑cronjob资源清单[root@k8s231pi]#vimcronjob.yamlapiVersion:batch/v1kind:CronJobmetadata: name:xinjizhiwaspec: schedule:"*****" #定义job的模板 jobTemplate:  spec:   template:    spec:     containers:     -name:c1      image:alpi

【梳理】k8s使用Operator搭建Flink集群(高可用可选)

文章目录1.架构图2.helm安装operator3.集群知识k8s上的两种模式:Native和Standalone两种CR4.运行集群实例Demo1:Application集群Demo2:Session集群优劣5.高可用部署问题1:HighavailabilityshouldbeenabledwhenstartingstandbyJobManagers问题2:ThebasedirectoryoftheJobResultStoreisn'taccessible6.补充1.架构图参考:部署验证demo2.helm安装operator安装cert-manager依赖Jetstack/cert-ma