go-zero 开发之安装 etcd

本文只涉及 Linux 上的安装。

二进制安装

  • 下载二进制安装包
#ETCD_VER=v3.4.28
ETCD_VER=v3.5.10
DOWNLOAD_URL=https://github.com/etcd-io/etcd/releases/download
INSTALL_DIR=/tmprm -f ${INSTALL_DIR}/etcd-${ETCD_VER}-linux-amd64.tar.gz
rm -rf ${INSTALL_DIR}/etcd-download-test && mkdir -p /tmp/etcd-download-testcurl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o ${INSTALL_DIR}/etcd-${ETCD_VER}-linux-amd64.tar.gz

下载地址示例:

https://github.com/etcd-io/etcd/releases/download/v3.5.10/etcd-v3.5.10-linux-amd64.tar.gz
  • 解压二进制安装包
tar xzvf ${INSTALL_DIR}/etcd-${ETCD_VER}-linux-amd64.tar.gz -C ${INSTALL_DIR}/etcd-download-test --strip-components=1
  • 删除二进制安装包
rm -f ${INSTALL_DIR}/etcd-${ETCD_VER}-linux-amd64.tar.gz
  • 版本检查
${INSTALL_DIR}/etcd-download-test/etcd --version
${INSTALL_DIR}/etcd-download-test/etcdctl version
  • 启动 etcd
${INSTALL_DIR}/etcd-download-test/etcd
  • 往 etcd 写读数据
${INSTALL_DIR}/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
${INSTALL_DIR}/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo

Docker 安装

INSTALL_DIR=/tmp
rm -rf ${INSTALL_DIR}/etcd-data.tmp && mkdir -p ${INSTALL_DIR}/etcd-data.tmp && \docker rmi gcr.io/etcd-development/etcd:v3.4.28 || true && \docker run \-p 2379:2379 \-p 2380:2380 \--mount type=bind,source=${INSTALL_DIR}/etcd-data.tmp,destination=/etcd-data \--name etcd-gcr-v3.4.28 \gcr.io/etcd-development/etcd:v3.4.28 \/usr/local/bin/etcd \--name s1 \--data-dir /etcd-data \--listen-client-urls http://0.0.0.0:2379 \--advertise-client-urls http://0.0.0.0:2379 \--listen-peer-urls http://0.0.0.0:2380 \--initial-advertise-peer-urls http://0.0.0.0:2380 \--initial-cluster s1=http://0.0.0.0:2380 \--initial-cluster-token tkn \--initial-cluster-state new \--log-level info \--logger zap \--log-outputs stderrdocker exec etcd-gcr-v3.4.28  /usr/local/bin/etcd --version
docker exec etcd-gcr-v3.4.28  /usr/local/bin/etcdctl version
docker exec etcd-gcr-v3.4.28  /usr/local/bin/etcdctl endpoint health
docker exec etcd-gcr-v3.4.28  /usr/local/bin/etcdctl put foo bar
docker exec etcd-gcr-v3.4.28  /usr/local/bin/etcdctl get foo

etcd 主要使用 Google 容器注册表(gcr.io)下的 gcr.io/etcd-development/etcd 仓库来存储其容器镜像。作为次要选项,它还使用 Quay.io 下的 quay.io/coreos/etcd 仓库。这两个注册表都提供 etcd 容器镜像,可用于在类似 Kubernetes 的容器化环境中部署 etcd。

grc: Google Container Registry

安装参考

https://github.com/etcd-io/etcd/releases/

使用证书

假设 CACert 证书文件为 etcd-6ecm89rt-CAcert,Cert 证书文件为 etcd-6ecm89rt-Cert,私钥文件为 etcd-6ecm89rt-Key,etcd 的访问地址为 https://192.168.10.17:2023,取 key 为 foo 的值:

etcdctl --endpoints=https://192.168.10.17:2023 \--cacert=etcd-6ecm89rt-CAcert \--cert=etcd-6ecm89rt-Cert \--key=etcd-6ecm89rt-Key \get foo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/212019.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

反汇编语言区分函数和运算符

在汇编语言中,函数和运算符可以通过一些特定的指令和约定来区分。 函数: 函数通常由一系列指令组成,用于执行特定的任务或操作。函数通常具有入口点和出口点,分别表示函数的开始和结束位置。函数通常包含参数传递、局部变量的分配…

windows错误事件 98、41、7000、55、153解决办法

事件错误:98、55、153 疑难解答清单 在系统事件日志中,搜索新技术文件系统 (NTFS) 和磁盘相关的警告和错误。 例如,事件 ID 55、153 或 98。 管理员身份打开CMD,运行命令 chkdsk /scan 并检查结果。 该 chkdsk /scan 命令是只读…

字符串详解+代码分析

目录 1. 字符与整数的联系——ASCII码每个常用字符都对应一个-128 ~ 127的数字,二者之间可以相互转化。注意:目前负数没有与之对应的字符。 2.字符数组 2.2 字符数组的常用操作下面几个函数需要引入头文件: 2.3 遍历字符数组中的字符: 3.…

ICMP协议以及报文讲解(ICMP查询报文、ICMP差错报文)

目录 ICMP协议 ICMP报文格式 ICMP回显请求/应答报文 ICMP差错报文 ICMP 宿主机不可达差错报文 ICMP 重定向差错报文 ICMP TTL超时差错报文 ICMP协议 ICMP协议的作用 ICMP(Internet Control massage protocol)因特网控制协议,主要用来…

C语言再学习 -- 单精度(float)和双精度(double)浮点数 与 十六进制(HEX) 之间转换(转载))

之前讲过浮点数部分,参看:C语言再学习 – 浮点数 现在程序中要将浮点数,通过TCP发送。那得先将其转换为十六进制才行呀。 那么问题就来了。 参看:C语言:单精度(float)和双精度(double)浮点数 与 十六进制(HEX) 之间…

(JAVA)-打印流

打印流是高级流,只能写不能读,只有输出流 只操作文件目的地,不操作数据源 能实现数据的原样输出 printStream:字节打印流 构造方法: 用文件或地址的方式创建字节打印流也会创建一个字节基本流。 字节流底层没有缓存区&#xff…

文档或书籍扫描为 PDF:ScanPapyrus Crack

ScanPapyrus 可让您快速轻松地将文档或书籍扫描为 PDF,批处理模式使扫描过程快速高效,自动处理书籍并将其拆分为单独的页面 用于快速扫描文档、书籍或打印照片的扫描仪软件 快速扫描文档 使用此扫描仪软件,您无需在扫描仪和计算机之间来回移动…

SpringBoot 官方脚手架不再支持Java8和Java11

Spring 官方脚手架不再支持初始化 Java8 和 Java 11 项目,目前仅支持初始化Java17 和 Java21 项目。 阿里巴巴Spring脚手架支持初始化Java8、Java11、Java17、Java19 的项目,不支持初始化Java21的项目。

Torn Lucky Ticket

题目 #include<bits/stdc.h> using namespace std; #define int long long const int maxn 1e6 5, d 500; vector<string> vec[6]; int mp[1005]; signed main(){int n;cin >> n;for(int i 1; i < n; i){string s;cin >> s;int len s.size();…

java简述springboot内置数据库 并举例启动h2内存数据环境

在前面 我们讲了 springboot 给我们提供了 默认的 数据源 默认 HikariCP 以及其他两种内置数据源 持久化技术 JdbcTemplate 那么 说起来很多人难以置信 不过 springboot 也真的给我们内置了数据库技术 而且不止一种 是三种 这三个数据库的特点在于 它们都是用java语言写的 就表…

28 动态规划解按摩师的最长预约时间

问题描述&#xff1a;一名有名的按摩师会受到源源不断的预约请求&#xff0c;每个预约都可以选择接或者不接&#xff0c;在每次预约服务之间要有休息时间&#xff0c;因此不能接相邻的预约&#xff0c;给定一个请求序列&#xff0c;按摩师找到最优的预约集合(总预约时间最长)&a…

探索中文文本处理利器 - Python jieba库详解

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com jieba库介绍 在处理中文文本数据时&#xff0c;分词是一项至关重要的任务。而在Python的工具箱中&#xff0c;jieba库作为一款强大的中文分词工具&#xff0c;为开发者提供了高效而灵活的解决方案。jieba&#…

JDK8新特性:Lambda表达式规则及用法,方法引用

目录 Lambda表达式是JDK8新增的一种语法格式 1.作用 2.用法规则&#xff1a; 3.方法引用 Lambda表达式是JDK8新增的一种语法格式 1.作用 简化匿名内部类的代码写法 Lambad用法前提&#xff1a;只能简化函数式接口&#xff08;一般加有Funcationallnterface&#xff09;&a…

Python dateutil 库:简化日期和时间处理的利器

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 在Python中&#xff0c;处理日期和时间是常见的任务之一。dateutil库是Python标准库中datetime模块的扩展&#xff0c;提供了许多方便的工具和函数&#xff0c;简化了日期和时间的操作。 安装与基本用法 首先&…

小黑子之——MybatiPlus整合

MybatiPlus学习 一、MybatiPlus简介1.1 入门案例1.2 mybatisPlus概述1.3 总结 二、标准数据层开发2.1 标准的CRUD使用2.2 新增2.3 删除2.4 修改2.5 根据Id查询2.6 查询全部2.7 Lombok2.8 分页功能 三、DQL控制3.1 条件查询方式3.1.1 构建条件查询3.1.2 多条件查询3.1.3 null值判…

运维05:自动化

人工运维时代 运维人员早期需要维护众多的机器&#xff0c;因此需要执行很多重复的劳动&#xff0c;很多机器需要同时部署相同的服务或者是执行相同的命令&#xff0c;还得反复地登录不同的机器&#xff0c;执行重复的动作 自动化运维时代 早期运维人员会结合ssh免密登录&…

Java基础——对象类型转换(向上、向下转型)

非继承关系的类之间对象类型不可以互相类型转换&#xff0c;只有继承关系才可以互相转换。 简单说&#xff0c;对象类型转换的前提要是继承关系。 对象类型转换分为&#xff1a;向上转型和向下转型。多态就是一种自动向上转型。 向上转型&#xff1a;子类对象用父类类型接收…

Leetcode 2963. Count the Number of Good Partitions

Leetcode 2963. Count the Number of Good Partitions 1. 解题思路2. 代码实现 题目链接&#xff1a;2963. Count the Number of Good Partitions 1. 解题思路 这一题根据题意&#xff0c;显然我们可以将其先分为 n n n个原子partition&#xff0c;确保任意两个partition之间…

git 常用的使用方法

1.查看分支 $ git branch #查看本地分支 $ git branch -r #查看远程分支 $ git branch -a #查看所有分支 $ git branch -vv #查看本地分支及追踪的分支 2.创建分支 方法1 $ git branch 分支名 #创建本地分支 #将本地分支push&#xff0c;就创建了远程分支方法2 #创建本地分…

载入了名字空间‘htmltools’ 0.5.6,但需要的是>= 0.5.7解决方案

解决方案&#xff1a;删除之前的旧版本安装包&#xff0c;安装新的包 1.卸载之前的安装包 2.关闭R&#xff0c;重新打开 3. # install.packages("htmltools") library(htmltools)