微服务实战系列之玩转Docker(十八)

SpringCloud实战:目录+Spring Cloud 微服务电商实战项目大纲 SpringCloud实战 目录 1、SpringCloud实战一:前言 2、SpringCloud实战二:Spring Cloud Eureka 服务发现与注册中心 3、SpringCloud实战三:Spring Cloud Eureka 配合 Security 提高安全 4、SpringCloud实战四:Spring Cloud Eureka 高可用 5、SpringCloud实战五:Spring Cloud Feign 服务调用 6、SpringCloud实战六:Spring Cloud Feig 阅读详情

前言

etcd与zooKeeper一样,作为分布式场景下的数据共享工具,变得“人见人爱”。当然它俩之间的异同,博主在这里暂且不表。那么该谈点啥呢?博主认为但凡提到“数据”一词,甚至“共享”,必须优先考虑数据安全问题。

在这里插入图片描述

殊不知,“当你为自己开启了方便之门,与此同时,也会为他人带来捷径。一正一反,皆是因果”。因此,如何保障数据的访问和共享安全,在etcd的发展过程中,逐步得到了提升和完善。

话不多说,关于容器云场景下etcd集群的第三篇,博主开始大话它的安全机制,并提供相关实践。愿为你的数据之身披上一件无法突破的如意“金盾”。

Q:如何保障容器云环境下etcd集群的数据安全

一、安全机制

etcd的安全机制是建立在RBAC模型的基础上。如果你还不懂RBAC,可查阅相关资料,这里不再赘述。简单一句话,RBAC是基于角色的访问控制(Role-Based Access Control )。在 RBAC 中,用户(Who)、角色(How)、资源(What)通过不同的关联实现不同类型的权限控制。可以通过下图加深理解:

在这里插入图片描述
有了这个思想认知后,咱们一块来看,ectd是如何做到这些的。

身份认证必学必看

本文博主采用etcd最新版本(V3)对身份认证相关功能进行说明,并通过docker完成。如果你需要确认自己的etcd版本,可以通过下面的方法完成。
即打开浏览器输入http://[你的etcd ip]:2379/version,回车可得到如下结果:
在这里插入图片描述

1. 启动参数

既然使用docker完成,那么有必要对etcd常用的启动参数加以介绍,以观全局。

参数名称参数说明
TZ即timezone,代表时区,国内选Asia/Shanghai
ETCD_NAMEetcd节点名称
ETCD_DATA_DIRetcd容器的数据存储目录
ETCD_ADVERTISE_CLIENT_URLS描述当前etcd节点的地址,即让集群知道“我是谁”
ETCD_INITIAL_ADVERTISE_PEER_URLS描述当前etcd节点的通信地址,即让集群知道“我上线”了
ETCD_LISTEN_PEER_URLS描述当前节点与其他节点通信的监听地址
ETCD_INITIAL_CLUSTER_TOKEN初始化集群token(集群的唯一性)
ETCD_INITIAL_CLUSTER初始化集群,定义有哪些成员
ETCD_INITIAL_CLUSTER_STATE初始化集群状态,首次为new(新建),否则为existing(已存在)
ALLOW_NONE_AUTHENTICATION允许免密登录,设置为yes

2. 授权命令

启动完成后,我们可以借助etcdctl实现用户、角色、资源的创建和授权等操作。

# 查看etcd用户列表
etcdctl user list
# 添加一个用户
etcdctl user add [USER_NAME]
# 查看etcd角色列表
etcdctl role  list
# 添加一个角色
etcdctl role add [ROLE_NAME]
# 为角色[ROLE_NAME]赋予[DATA_DIR]的读写权限
etcdctl  role grant-permission [ROLE_NAME] --prefix=true readwrite [DATA_DIR]
# 查看用户[USER_NAME]的角色
etcdctl user get [USER_NAME]
# 为用户[USER_NAME]添加角色[ROLE_NAME]
etcdctl user grant-role [USER_NAME] [ROLE_NAME]

3. 开启认证

开启认证比较简单了,可通过以下命令完成:

# 查看是否已开启身份认证
etcdctl auth status
# 开启认证,并指定用户和密码
etcdctl auth enable --user="" --password=""

二、应用实践

通过第一节的介绍,我们可以顺利完成实操。本次博主以一个单节点为例,进行相关演示,请紧随博主的步伐,不可三心二意哦~

1. 访问容器

输入docker exec -it etcd-node1 /bin/bash,可观察执行结果:
在这里插入图片描述
如上图,已成功进入容器内部。

2. 查看认证是否开启

输入etcdctl auth status,可观察执行结果:
在这里插入图片描述
如上图状态为false,代表未开启。

3. 查看是否已创建用户

输入etcdctl user list,可观察是否已创建用户(用户是认证的前提):
在这里插入图片描述
如上图,一片空白,代表此时未创建任何用户。

4. 创建用户

无用户,那么就创建一个呗,比如root,可观察结果:
在这里插入图片描述
如上图,创建root并设置一个密码。

5. 开启认证

输入etcdctl --user --password --endpoints etcd或集群 auth enable,可观察结果:
在这里插入图片描述
如上图,成功开启了认证。

6. 验证是否开启

我们可以通过以下命令进行验证(带用户),可观察结果:
在这里插入图片描述
如上图状态为true,代表已开启。

7. 验证数据

开启身份认证后,我们可检验一下它是否生效,输入etcdctl put [KEY] [VALUE],可观察结果:
在这里插入图片描述
如上图,添加失败,因为未指定操作用户。所以接下来应该怎么办?指定用户呗。
在这里插入图片描述
查看添加结果:
在这里插入图片描述

完美!

结语

容器云场景下,etcd的安全机制建立在用户身份认证的基础上。各位盆友可通过本文进行相关设置,保障数据的安全访问。当然etcd也支持使用证书保障数据的安全传输(集群内部、客户端),未来博主有时间再补充说明。

走过的、路过的盆友们,点点赞,收收藏,并加以指导,以备不时之需哈~

系列回顾


微服务实战系列之玩转Docker(十七)
微服务实战系列之玩转Docker(十六)
微服务实战系列之玩转Docker(十五)
微服务实战系列之玩转Docker(十四)
微服务实战系列之玩转Docker(十三)
微服务实战系列之玩转Docker(十二)
微服务实战系列之玩转Docker(十一)
微服务实战系列之玩转Docker(十)
微服务实战系列之玩转Docker(九)
微服务实战系列之玩转Docker(八)
微服务实战系列之玩转Docker(七)
微服务实战系列之玩转Docker(六)
微服务实战系列之玩转Docker(五)
微服务实战系列之玩转Docker(四)
微服务实战系列之玩转Docker(三)
微服务实战系列之玩转Docker(二)
微服务实战系列之玩转Docker(一)
微服务实战系列之云原生

在这里插入图片描述

获取B站某用户更多的关注数和粉丝数 获取B站某用户更多的关注数和粉丝数 相关记录 一、 前言 B 站最多只能翻 5 页用户的关注数和粉丝数,如何能够看到更多呢。 方法我也是从网上翻来的,记载博客里,算是我研究过这个话题了。 二、需要的东西 关注数的 api https://api.bilibili.com/x/relation/followings?vmid=2884629&pn=1&ps=20&order=desc&jsonp=jsonp 关注者(粉丝)的 api https://api.bilibili. 阅读详情

相关推荐

jmeter5.4.1 使用案例

jmeter主要用于接口压力测试,模拟海量请求并发访问接口 1.下载jmeter https://jmeter.apache.org/download_jmeter.cgi 2.启动jemter 双击即可 3.配置jmeter 1.先更改语言 2.创建线程组 配置线程执行规划 3.创建http请求默认值 4.创建http请求 5.创建http信息头管理器 指定 Content-Type:application/json 6.创建响应断言 7.创建察看结果数 直接点击 执行 按.

SpringHASh的博客 1221

微服务实战系列之玩转Docker(十)

我们知道Docker的“使命”是为了快速完成应用的迁移和部署。为提升它的战斗能力,Docker官方携手发布了—— 一个快速完成Docker集群构建的利器。那么请先回忆一下本系列第八篇(重点compose)和第九篇(重点network),一个是为了完成在同一个Docker主机下多容器的编排和运行,另外一个是为Docker主机与容器之间或容器与容器之间进行通信而提供的基本网络类型。而同样具备容器编排能力,其价值体现在跨主机集群式的容器管理和编排能力上。可以理解为是对compose。

splendid_java的专栏 3061

ubuntu20.04开机黑屏卡在/dev/sda1:clean,***files,***blocks,解决心得记录

这个问题如果你百度,会发现目前有很多种解决方法。 有更新显卡驱动的,有卸载上一次安装软件的,还有各种奇奇怪怪的故障原因。 如果你是属于上述情况,那么按照百度和论坛的各种指引操作一般都能解决。 但我这里主要说一种特殊情况,就是我什么也没有操作,我什么也没干。就是正常使用系统关了机突然就报错了。 这也是自己亲自遇到的问题,做个小记录方便以后自己回顾。 上一次出现这种情况我重装系统了,这次用了两个月又出现了,重装成本太高,我接受不了,于是找到解决办法。 首先找个终端进入,进入终端的方法很多,用安装u盘

qq_41517017的博客 2万+

微服务实战系列之玩转Docker(四)

幸福,就是继续追寻已经拥有的东西。——圣·奥古斯丁什么算已经拥有的?比如爱你的人在等你,比如每日热腾腾的三餐,比如身边可爱的同事,又比如此刻的你,看见了这篇博文(😁😁😁)。所以这么看来幸福很简单,也很直接哈。轻松自在,乐于学习,何尝不是一种已经拥有的幸福。话不多说,言归正传。博主前序的三篇博文,旨在对docker的背景目标、运行原理、桌面体验进行简单概述。我想任何一个“小白”读完后,必然有所收获,甚至可以直接向团队提建议——我们愉快的使用docker吧!“玩归玩,闹归闹,不用不知道,用过必骄傲”

splendid_java的专栏 2274

告别Failed to start错误!保姆级教程:用Ubuntu20.04安装盘搞定GRUB与系统服务修复

本文提供Ubuntu20.04系统启动失败的专业修复指南,详细讲解如何利用安装盘解决GRUB与系统服务问题,避免重装系统导致的数据丢失。涵盖分区挂载、chroot环境操作、服务诊断与修复等实用技巧,帮助用户高效恢复系统正常运行。

weixin_32578161的博客 331

Unity Acceleratorc与Cache Server unity的缓存服务器

文章目录1.作用概述2.用法(使用,看这个就够了)服务端下载部署Unity Acceleratorc修改http管理端口修改Editor连接端口客户端使用(设置好一次提交设置,团队拉取即可全部生效)3.测试平台切换测试资源导入测试(打开编辑器的情况下)项目启动测试(不打开编辑器的情况下)4.不同版本表现5.服务端监控6.服务端缓存7.冲突8.预警9.不同项目/不同配置-同种资源10.缓存清除 1.作用概述 编辑器模式下,导入资源,切换平台unity都会重新识别资源,大型项目很浪费时间,使用Cache Ser

euphorias的博客 3812

微服务实战系列之玩转Docker(六)

刚进入大暑“清凉不肯来,烈日不肯暮”,空调开到晚,还是满身汗。——碎碎念我们知道,仓库可见于不同领域,比如粮食仓库、数据仓库。在容器领域,自然也有镜像仓库(registry)。那为什么不是容器仓库呢?你想想,再想想,仔细想想…docker默认支持公有仓库和私有仓库两种。而公有仓库比如Docker Hub,因为在国外(所以你懂得),一般访问比较慢,甚至无法访问。此刻你需要一个加速器(比如常见的阿里云、网易云、腾讯云等)。“只为你服务”,一般用于企业内部的业务。

splendid_java的专栏 1539

基于文件通信的QMT量化交易信号桥接方案设计与实现

在量化交易系统开发中,进程间通信(IPC)是连接不同计算模块、实现策略逻辑与交易执行解耦的关键技术。其核心原理在于允许运行于独立环境或进程的程序安全、可靠地交换数据。文件系统通信作为一种经典的IPC方法,因其实现简单、跨平台兼容性好且数据可持久化,在非高频场景下具有重要技术价值。它尤其适用于需要将外部复杂计算环境(如配备丰富数据科学库的Python环境)与专用交易终端(如迅投QMT)集成的应用场景。通过约定文件路径与数据格式,外部程序可将包含交易指令的JSON信号文件写入特定目录,而交易终端通过轮询或监听机

weixin_28678151的博客 417

微服务实战系列之玩转Docker(三)

镜像(Image)作为Docker的“水源”,取之于它,用之于它。这对于立志成为运维管理的撒手锏——Docker而言,重要性不言而喻。我们在虚拟机时代(当然现在依然ing…),如何快速完成系统的迁移呢?通常是Copy 一个VM。这个VM是“又笨又大”。难怪会被取代,我们总是希望事半功倍,因为本能使然。本文主要对docker的核心原理进行剖析,从底层理解为什么docker能够胜任当前的发展需要。

splendid_java的专栏 1945

AI大模型与碳足迹评估结合模式及示范案例

AI大模型与碳足迹评估相结合,可以提供更精确、更快速的碳排放量计算,优化减排策略,并促进可持续发展目标的实现。

贾贾的博客 3943

Git GUI学习教程

学习宗旨:快速应用,不易忘记 很遗憾,申请Git的专栏未审批,那我就不再写专栏了,把最近的学习心得写一下,我也是在学习中进行,有任何问题直接留言,回复交流,我还采用思路+实践模式快速过。 目录 1、Git是什么 2、远程仓库 1)GitHub: 2)Gitee(码云): 3、安装Git(Windows) 1)下载 ...

Alexantao 的专栏 7251

微服务实战系列之玩转Docker(二)

上一篇,博主对Docker的背景、理念和实现路径进行了简单的阐述。作为云原生技术的核心之一,轻量级的容器Docker,受到业界追捧。因为它抛弃了笨重的OS,也不带Data,可以说,能够留下来的都是打仗的“精锐”。趁热打铁,续写新篇,今天继续“玩转”Docker。既然提到了“玩”,那就愉快的玩起来吧。怎么玩,且听博主分解。工欲善其事必先利其器,咱们先选择一个简单的“器”玩起来,在win下操作docker,获得一些使用体验。Docker Desktop是一个简洁、高效、易用的桌面工具。

splendid_java的专栏 2087

goahead(嵌入式Web服务器)之文件传输篇

goahead文件上传原理: 使用html form即表单提交文件上传请求,web服务器核心处理接收客户端Post过来的文件数据(注意post的是二进制数据),最后,web服务器把接收到文件数据以二进制格式写到服务器本端存储系统。 goahead文件上传步骤: 1、创建upload.html文件,内容如下: <html> <head> <meta charset="utf-8"/> <title>Upload</title> </head&g

weixin_40732273的博客 3495

微服务实战系列之玩转Docker(十九)

快乐有迹可循,热爱漫无边际”。的确,当你站在热爱的土地上,快乐的“小芽”自然会“悄然萌发”。——碎碎念玩转Docker终于又要更新了,这个系列从一颗“小芽”,到现在“枝繁叶茂”,离不开博主的辛勤浇灌。话不多说,言归正传,本期依然延续上篇的主题——etcd。十六:对etcd进行基本介绍,掌握它的一些特性,并完成集群的安装;十七:进一步对集群运行进行说明,并提供可视化的数据管理方案;十八:着重介绍etcd的安全方案,通过访问控制实现数据授权;

splendid_java的专栏 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

微服务入门学习教程(Spring Boot+Spring Cloud+Docker)

从传统项目到互联网项目,从单体应用到微服务架构,从人工运维到自动化运维,从物理机房到云服务器再到Serverless,最后留给开发人员的只剩下了业务服务,业务服务的高可用性和可扩展性就成了开发人员能力的考核点,而微服务就是对应的解决方案。

guangcaiwudong的博客 4301

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

二十八、docker详解

docker详解

kejizhentan的博客 6194

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

六祎-来自转载:Kubernetes系列、 Docker系列、SpringCloud系列、SpringBoot系列、Spring系列、 Java系列等

Kubernetes系列 使用Kubespray部署Kubernetes集群 Kubernetes对象模型 Kubernetes基础与架构 谈 Kubernetes 的架构设计与实现原理 Docker系列 Docker入门与实践 Docker官方文档翻译1 Docker官方文档翻译2 Docker官方文档翻译3 ...

六祎的博客 432

Docker与微服务实战(四)

(1)搜索镜像(2)拉取镜像(3)查看镜像(4)启动镜像--服务端口映射(5)停止容器(6)移除容器。

Wang3317866410的博客 1074

SpringCloud第十八篇:微服务 Docker 化之基础环境

容器化 Docker 的横空出世,给了容器技术带来了质的飞跃,Docker 标准化了服务的基础设施,统一了应用的打包分发,部署以及操作系统相关类库等,解决了测试生产部署时环境差异的问题。对于运维来讲,由于镜像的不可变性,更容易进行服务部署和回滚操作。利用各种第三方容器管理平台,实现一键部署、动态伸缩等操作变的轻而易举。 基础镜像选择 在操作系统的选择上,可选择传统的 CentOS 、 Ubuntu 或者更为轻量化的 Alpine 。比如 CentOS 或者 Ubuntu 的镜像都在 100MB 以上..

m0_46411313的博客 208

跟我学SpringCloud | 第十八篇:微服务 Docker 化之基础环境

1. 容器化 Docker 的横空出世,给了容器技术带来了质的飞跃,Docker 标准化了服务的基础设施,统一了应用的打包分发,部署以及操作系统相关类库等,解决了测试生产部署时环境差异的问题。对于运维来讲,由于镜像的不可变性,更容易进行服务部署和回滚操作。利用各种第三方容器管理平台,实现一键部署、动态伸缩等操作变的轻而易举。 2. 基础镜像选择 在操作系统的选择上,可选择传统的 CentOS 、...

极客挖掘机 2676

[置顶] k8s,docker,微服务,监控

综合 第一篇:k8s服务A内部调用服务B的方式 第二篇:go-zero grpc 第一篇:grpc,protobuf安装 第二篇:grpc签发证书 第三篇:golang-grpc 第四篇:python-grpc 第五篇:grpc流模式-go实现 第六篇:etcd docker 第一篇:docker安装 第二篇:do...

jeff_gyy的博客 93

SpringBoot3 和 SpringCLoud 微服务(二)

在本章中,我们将构建我们的第一个几个微服务。我们将学习如何创建具有最小功能的协作微服务。在未来的章节中,我们将向这些微服务添加更多和更多的功能。到本章结束时,我们将通过组合微服务公开一个 RESTful API。组合微服务将调用其他三个微服务,使用它们的 RESTful API 来创建聚合响应。本章将涵盖以下主题:介绍微服务景观生成骨架微服务添加 RESTful API添加组合微服务添加错误处理手动测试 API为微服务添加隔离的自动化测试向微服务景观添加半自动化测试有关如何安装本书中使用的工具以及如何访问本

龙哥盟 1389

Spring Cloud 微服务开发系列整理

Spring Boot 系列精选 Spring Boot 自定义 starter Spring Boot 整合 mybatis-plus Spring Boot 整合 spring cache Spring Boot 整合 rabbitmq Spring Boot 整合 elasticsearch Spring Boot 整合 docker Spring Boot 整合 elk Spring Bo...

程序员果果的博客 3239

十八、Docker 容器运行时机制-4-docker-enterprise-application-deployment

Nginx:高性能 Web 服务器配置与优化Tomcat:Java 应用多阶段构建与监控MySQL:主从复制与数据持久化Redis:Sentinel 与 Cluster 高可用方案:分布式搜索集群部署RabbitMQ:消息队列集群与负载均衡所有方案均经过生产环境验证,可直接应用于企业微服务平台建设。作者技术背景:资深 DevOps 架构师,主导多个大型企业容器化平台建设,专注于微服务架构与云原生技术。版权声明:本文采用 CC BY-NC-SA 4.0 协议,转载请注明出处。

m0_74823507的博客 319

Docker(十八)容器与云计算

Docker 目前已经得到了众多公有云平台的支持,并成为除虚拟机之外的核心云业务。

.正函数.的博客 2190
上一篇: 微服务实战系列之玩转Docker(十七)
下一篇: Python酷玩之旅_aigc文生图模型入门(通义万相)
一叶飞舟
一叶飞舟 新星创作者: Java技术领域 新星创作者: Java技术领域 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄16年 6566粉丝 140原创
评论 62
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值