使用aws-sdk-go上传对象到s3服务器

1.环境准备 MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。 MinIO是一个非常轻量的服务,……

阅读全文

Pulsar四种订阅模式

Pulsar四种订阅模式 订阅是命名好的配置规则,指导消息如何投递给消费者。 Pulsar 中有四种订阅模式: 独占,共享,灾备和key共享 1. 独占 Exclusive Exclusive模式为默认订阅模式。 在独占模式下,仅允许单个使用者附加到订阅。如果多个使用者使用相同的订阅来订阅主题,则会发生错误。 在下图中,仅允许……

阅读全文

Pulsar集群部署

Pulsar集群部署 简介 Apache Pulsar 是Apache软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性,被看作是云原生时……

阅读全文

使用Pulsar Manager管理集群

使用Pulsar Manager管理集群 Pulsar Manager 是一个网页式可视化管理与监测工具,支持多环境下的动态配置。可用于管理和监测租户、命名空间、topic、订阅、broker、集群等。通过不同的环境来关联不同的Pulsar集群。 假设你已经部署好了Pulsar集群,关于Pulsar集群的部署可……

阅读全文

Kubernetes 高级调度

节点亲和性调度 节点亲和性分类 节点亲和性调度主要分为硬亲和性调度 requiredDuringSchedulingIgnoredDuringExecution 和 软亲和性调度 preferredDuringSchedulingIgnoredDuringExecution 硬亲和性调度: 必须满足指定条件才调度,否则不调度 软亲和性调度: 优先考虑指定节点,实在不满足也行 节点硬亲和性调度 nginx-deploy.yaml 1apiVersion:apps/v12kind:Deployment3metadata:4name:nginx5spec:6replicas:37selector:8matchLabels:9app:nginx10template:11metadata:12labels:13app:nginx14spec:15affinity:16nodeAffinity:17requiredDuringSchedulingIgnoredDuringExecution:18nodeSelectorTerms:19- matchExpressions:20- key:kubernetes.io/hostname21operator:"In"22values:23- "k8s-m2"24containers:25- name:nginx26image:nginx:1.20.1-alpine27resources:28limits:29memory:"256Mi"30cpu:"250m"31ports:32- containerPort:8033name:http34protocol:T……

阅读全文

Kubernetes 调度策略

今天来看一下 Kubernetes 的调度策略 备注 每个版本的默认调度策略可能不太一样,具体可以查看相应版本的代码。 一、调度策略分类 pkg/scheduler/framework/plugins/legacy_registry.go 1 // Used as the default set of predicates if Policy was specified, but predicates was nil. 2 DefaultPredicates: sets.NewString( 3 NoVolumeZoneConflictPred, 4 MaxEBSVolumeCountPred, 5 MaxGCEPDVolumeCountPred, 6 MaxAzureDiskVolumeCountPred, 7 MaxCSIVolumeCountPred, 8 MatchInterPodAffinityPred, 9 NoDiskConflictPred, 10 GeneralPred, 11 PodToleratesNodeTaintsPred, 12 CheckVolumeBindingPred, 13 CheckNodeUnschedulablePred, 14 EvenPodsSpreadPred, 15 ), 16 17 // Used as the default set of predicates if Policy was specified, but priorities was nil. 18 DefaultPriorities: map[string]int64{ 19 SelectorSpreadPriority: 1, 20 InterPodAffinityPriority: 1, 21 LeastRequestedPriority: 1, 22 BalancedResourceAllocation: 1, 23 NodePreferAvoidPodsPriority: 10000, 24 NodeAffinityPriority: 1,……

阅读全文

使用kube-prometheus快速部署监控系统

使用kube-prometheus快速部署监控系统 简介 根据官方的描述kube-prometheus集kubernetes资源清单、Grafana仪表盘、Prometheus规则文件以及文档和脚本于一身,通过使用prometheus operator提供易于操作的端到端Kuberne……

阅读全文

Podman新手入门

Podman新手入门 安装 安装podman centos7+可以直接使用yum进行安装 1yum -y install podman 验证安装 1podman version 2Version: 1.6.4 3RemoteAPI Version: 1 4Go Version: go1.12.12 5OS/Arch: linux/amd64 安装完成后,配置文件默认在/etc/containers下 1grep -Ev "^$|^#" registries.conf 2[registries.search] 3registries = ['registry.access.redhat.com', 'registry.redhat.io', 'docker.io'] 4[registries.insecure] 5registries = [] 6[registries.block] 7registries = [] 从配置文件可以看到默认搜索红帽和docker官方的registr……

阅读全文

MySQL InnoDB集群管理 - 使用mysqldump进行恢复和配置

作为群集的管理员,除其他任务外,您应该能够通过添加(或删除)新节点来还原故障节点并扩展(或收缩)群集。 在MySQL中,如果您的数据量不太大,可以使用mysqldump客户端执行逻辑备份是一种不错的选择。它是复制原始模式对象和数据的SQL语句。 但是,对于大量数据, 需要选择诸如MyS……

阅读全文

使用velero管理Kubernetes资源

使用velero管理Kubernetes资源 背景 经常在开发测试环境碰到这样一种情况,yaml文件被修改了,或者service被人删除了。这个时候需要第一时间恢复业务,保障其开发测试的可用性,在生产环境中,备份显得尤为重要,任何一个误操作都有可能导致业务受到影响。 一、简介 是 VMWare 开源的……

阅读全文