草庐IT

K8S-MongoDB

全部标签

滴滴2023.11.27P0级故障技术复盘回顾(k8s的的错?)

本文从滴滴官方恢复及技术公众号带大家从技术角度复盘这次事故目录1.背景2.滴滴官方消息3.问题分析及定位4.网传的k8s及解析5.k8s引发的思考:举一反三,怎么避免再次出现6.近段时间其他平台崩溃回顾1.背景11月27晚约10点,滴滴打车遭遇大范围技术故障。用户在使用滴滴的应用程序及小程序时遇到诸多问题,包括叫车功能反应迟缓、无法使用青桔单车扫码功能,以及领取打车优惠券功能失效。直至第二天早上,滴滴发文已恢复正常。根据微博反馈发现了如下问题:网络加载异常,无法排单;数据紊乱,一个订单被派到4个司机订单中;数据展示、数据状态有误,订单取消、订单支付都出现问题;排单逻辑出错,司机接单到两千公里以

K8s组件:etcd安装、使用及原理(Linux)

K8s组件:etcd安装、使用及原理(Linux)1介绍及安装1.1介绍分布式系统架构中对一致性要求很高,etcd就满足了分布式系统中的一致性要求。实现了分布式一致性键值对存储的中间件,支持跨平台,有活跃的社区。etcd是基于go实现的一个分布式键值对存储(类比Redis),设计用来可靠而快速的保存关键数据并提供访问。通过分布式锁,leader选举和写屏障(writebarriers)来实现可靠的分布式协作。etcd集群是为高可用,持久性数据存储和检索而准备。etcd完整的cluster(集群)至少需要3台,这样才能选出一个master和两个nodeetcd目前占用2379和2380两个端口2

云原生-k8s核心概念(pod,deploy,service,ingress,configmap,volume)

Gitee-k8s学习云原生实战-kubernetes核心实战namespaceNamespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离PodPod可以认为是容器的封装,一个Pod中可以存在一个或者多个容器。Deploymentkubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。deployment:pod控制器,控制一组标签相同的pod,使Pod拥有多副本,自愈,扩缩容,滚动更新,版本回退

【K8S认证】2023年CKS考题-默认网络策略(解析+答案)

题目:默认网络策略Context一个默认拒绝(default-deny)的NetworkPolicy可避免在未定义任何其他NetworkPolicy的namespace中意外公开Pod。Task为所有类型为 Ingress+Egress 的流量在namespace testing 中创建一个为 denypolicy 的新默认拒绝NetworkPolicy。此新的NetworkPolicy必须拒绝namespace testing 中的所有的 Ingress+Egress 流量。将新创建的默认拒绝NetworkPolicy应用在namespace testing 中运行的所有Pod。你可以在 /

MongoDB 基础知识梳理

 简介MongoDB是由C++编写的开源NoSQL和基于文档的数据库。MongoDB提供了面向文档的存储方式,操作起来比较简单和容易,支持“无模式”的数据建模,可以存储比较复杂的数据类型,是一款非常流行的文档类型数据库。MongoDB是非关系型数据库当中功能最丰富,最像关系型数据库的。它支持的数据结构非常松散,会将数据存储为一个文档,数据结构由键值对(key=>value)组成,是类似于json的bson格式,字段值可以包含其它文档、数组和文档数组,因此可以存储比较复杂的数据类型。在高负载的情况下,MongoDB天然支持水平扩展和高可用,可以很方便地添加更多的节点/实例,以保证服务性能和可用性

如何校验K8S Yaml文件

Kubernetes已经占据如何管理集容器化应用程序的核心位置。因此,存在许多定义Kubernetes应用程序的约定文件格式,包括YAML、JSON、INI等。这使得我们需要考虑应用程序的最佳策略是什么。此外,我们还必须考虑如何根据所选择的文件结构(特别是安全性)路径来验证应用程序配置。本文,我们将探讨使用YAML文件定义Kubernetes应用程序,以及可以采取的各种步骤来有效地验证这些配置定义。Yaml定义K8s配置与JSON和INI相比,YAML更加紧凑和可读。例如,如果我们要定义一个可以在端口80上可达的pod,那么YAML、JSON和INI中的配置将如下表所示。很明显,YAML简化了

【实战】K8S Helm部署Redis Cluster & Redisinsight

文章目录前言部署RedisCluster安装RedisInsight写在最后前言在Web服务的开发过程中,Redis一直以来都有着举足轻重的作用。基本上所有的后端服务都会用这个中间件实现具体的业务场景,比如常作为系统缓存、分布式锁,也可以实现排名、定位以及发布订阅队列等等。当然,在k8s平台我们也能够部署Redis集群,今天就以Helm快速部署Redis集群。部署RedisCluster一般情况下我们优先采用哨兵模式、cluster模式,这样才能保障高可用。今天作为演示,我们就采用普通的伪集群进行安装测试,当然其他的集群模式也是有helmcharts的。#添加bitnami仓库[root@ma

MongoDB和MongoDB Compass的安装配置教程

文章目录MongoDB和MongoDBCompass安装配置教程一、MongoDB1.1下载及安装1.1.1下载地址1.1.2安装过程1.2部署配置环境1.2.1配置环境变量1.2.2运行MongoDB服务1.2.3配置本地WindowsMongoGB服务1.2.4设置账号密码1.2.4.1设置1.2.4.2开启密码验证功能1.2.4.3重启Mongo服务二、MonDBCompass2.1下载及安装2.1.1下载地址2.1.2安装过程2.2启动和使用2.2.1启动2.2.2配置数据库链接2.2.3数据库操作2.2.4集合(表)操作MongoDB和MongoDBCompass安装配置教程一、Mo

MongoDB 6.0 单实例基于用户角色实现授权登录

现代数据库系统能够存储和处理大量数据。因此,由任何一个用户单独负责处理与管理数据库相关的所有活动的情况相对较少。通常,不同的数据库用户需要对数据库的某些部分具有不同级别的访问权限:某些用户可能只需要读取特定数据库中的数据,而其他用户则必须能够插入新文档或修改现有文档。同样,应用程序可能需要独特的权限,仅允许其访问其运行所需的数据库部分。MongoDB采用强大的机制来控制对数据库系统的访问和权限,称为基于角色的访问控制(RBAC)。在本文中,您将了解RBAC的工作原理、最小权限原则的含义和目的,以及如何在实践中使用MongoDB的访问权限功能。访问控制(也称为授权)是一种安全技术,涉及确定谁可以

k8s搭建EFK日志系统

搭建EFK日志系统前面大家介绍了Kubernetes集群中的几种日志收集方案,Kubernetes中比较流行的日志收集解决方案是Elasticsearch、Fluentd和Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案。Elasticsearch 是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大量日志数据,也可用于搜索许多不同类型的文档。Elasticsearch通常与 Kibana 一起部署,Kibana是Elasticsearch的一个功能强大的数据可视化Dashboard,Kibana允许你通过web界面来浏览Elasticsearc