一、介绍Minio是一款高性能的对象存储服务器,它兼容AmazonS3API。它的设计目的是为了提供云存储服务的性能和可扩展性,同时还保持着本地存储的简单性和易用性。Minio可以在Linux、MacOS和Windows等操作系统上运行,它可以通过命令行界面或RESTfulAPI进行管理。Minio的核心是对象存储,对象是一组二进制数据和元数据的组合。对象可以存储为文件,也可以存储为内存中的数据结构。对象可以存储在不同的存储介质中,如本地磁盘、网络文件系统、云存储等。Minio支持多种存储介质,它可以轻松地将数据存储到本地磁盘、AmazonS3、GoogleCloudStorage、Micro
记录一次排查UnexpectedAdmissionError问题的过程1.问题环境3master节点+N个GPU节点kubelet版本:v1.19.4kubernetes版本:v1.19.4生产环境K8S集群,莫名其妙的出现大量UnexpectedAdmissionError状态的Pod,导致部分任务执行异常,出现这种情况时,节点的资源是足以支持运行一个GPUPod的。报的错误:Allocatefailedduetorequestednumberofdevicesunavailablefornvidia.com/gpu.Requested:1,Available:0,whichisunexpe
Kubernetes概述Kubernetes是一个可移植、可拓展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。k8s这个缩写是因为k和s之间有八个字符的关系。应用部署方式传统部署时代早期,直接将应用程序部署在物理机上,无法限制在物理服务器中运行的应用程序资源使用,因此会导致资源分配问题,程序之间还会相互影响。如果将应用程序运行在不同的物理服务器上,有的应用程序资源利用率不高又会造成资源浪费,而且物理服务器的维护成本高昂。虚拟化部署时代虚拟化技术允许在单个物理服务器上运行多个虚拟机(VM)。每个虚拟机是一个独立的环境,可以有效隔离应用程序,且能提供一定程度的安全性。虚
一、Prometheus简介Prometheus是一个开源的系统监控和警报工具,用于收集、存储和查询时间序列数据。它专注于监控应用程序和基础设施的性能和状态,并提供丰富的查询语言和灵活的告警机制1、Prometheus基本介绍数据模型:Prometheus使用时间序列数据模型来存储监控数据。时间序列由一个唯一的指标名称和一组键值对标签组成,代表了某个指标在特定时间点的数值。这种数据模型非常适合度量指标的变化和趋势。数据采集:Prometheus支持多种数据采集方式。它可以直接采集应用程序的指标数据,也可以通过各种监控插件和集成来获取系统和网络层面的指标数据。采集的数据通过HTTP或其他协议发送
目录1、LB+ ingress1.1Ingress简介1.2Ingress组成1.3Ingress工作原理2、部署nginx-ingress-controller/2.1部署ingress-controllerpod及相关资源2.2修改ClusterRole资源配置2.3ingress暴露服务的方式2.4指定nginx-ingress-controller运行在node02节点2.5修改Deployment为DaemonSet,指定节点运行,并开启hostNetwork网络2.6在所有node节点上传nginx-ingress-controller镜像压缩包ingree.contro.tar.
搭建K8S基础环境如果已经有K8S环境的同学可以跳过,如果没有,推荐你看看我的《Ubuntu22加Minikue搭建K8S环境》,课程目录如下:Ubuntu22安装Vscode下载:https://code.visualstudio.com/Download安装命令:sudodpkg-icode_1.85.1-1702462158_amd64.debUbuntu22搭建Golang开发环境下载:https://studygolang.com/dl将其上传到Downloads目录下。解压:tar-xzvfgo1.21.5.linux-amd64.tar.gz将其移动到特定目录:mvgo/usr/
生么是k8s:Kubernetes:8个字母省略,就是k8s自动部署,自动扩展和管理容器化部署的应用程序的一个开源系统、k8s是负责自动化运维管理多个容器化程序的集群,是一个功能强大的容器编排工具。分布式和集群化的分布式进行容器管理。1.15 1.18 1.20 1.28 现在普遍用的是1.20k8s是Google的borg系统作原型,后期经由go语言编写的开源软件。Docker微服务,可以满足微服务使用,那么为什么还要使用k8s呢。传统的部署方式:一般意义上的二进制部署,安装-运行-运行维护,需要专业的人员,如果出现故障还需要人工重新拉起来,而且如果业务量增大,只能水平的拓展,再部署
YAML格式:用于配置和管理,YAML是一种简洁的非标记性语言,内容格式人性化,较易读。1、查看API资源版本标签kubectlapi-versions2、编写资源配置清单kubectlcreate-fnginx-test.yaml--validate=false2.3查看创建的pod资源kubectlgetpods-owide3、创建service服务对外提供访问并测试3.1、编写nginx-svc-test.yaml文件3.2、创建资源对象kubectlcreate-fnginx-svc-test.yamlkubectlgetsvc3.3、访问测试访问nginx-test的ipcurl19
有时,我们不想手动建立pv和pvc,这时,我们可以通过strongClass存储类来帮我们实现,动态建立pvc,并动态为它分配pv存储空间,我们以nfs为例,说一下动态分配在nfs存储截至上建立pv的方式。本文导读StorageClass和PVC及PV集群权限与绑定rbac.yaml建立动态pvc的provisioner.yaml建立strongClass的strongclass.yaml在有状态服务StatefulSet中使用strongClass遇到的问题与解决StorageClass和PVC及PV当使用StorageClass创建PersistentVolumeClaim(PVC)时,它
前言前面分享了k8s的部署安装,本篇来点实操,将会把一个.netcore+vue的项目(zhontai),打包构建成docker镜像,推送到nexus镜像仓库,并部署到k8s中准备要实现项目的部署,除了准备要部署的环境(k8s),还需要准备项目所用到的各中间件,本文旨在分享部署的一个整体流程,对项目中所使用到的各中间件(mysql,redis等)的安装使用可自行在本DevOps系列文章中找到一个.netcore+vue的项目使用zhontai项目,之前也有做分享,文章介绍后端Admin.Corev3.7.1前端admin.ui.plusv2.2.0Nexus的安装部署,文章介绍做为镜像仓库使用