首页 > TAG信息列表 > Etcd
docker创建etcd
version: "3.5" services: etcd: hostname: etcd image: bitnami/etcd:3 deploy: replicas: 1 restart_policy: condition: on-failure # ports: # - "2379:2379" # - "2380:2380" #etcd——源码编译、学习
借一张图 1、下载 https://github.com/etcd-io/etcd git clone https://github.com/nats-io/nats-server.git 2、编译 进入etcd目录, mac/linux下, make clean && make build 在etcd/bin目录下,生成 etcd etcdctl etcdutl 三个可执行文件 在win10下,不通过重新构建Kubernetes来实现更具弹性的容器编排系统
通过重新构建Kubernetes来实现更具弹性的容器编排系统 译自:rearchitecting-kubernetes-for-the-edge 摘要 近年来,kubernetes已经发展为容器编排的首要选择。kubernetes主要面向云环境,但新的边缘场景要求性能、可用性和可扩展编排。kubernetes在etcd(一个强一致的键值存储)中保存了OpenStack-T版四项基础服务(SQL;message;memcached;etcd)
数据库 安装软件包 #yum install mariadb mariadb-server python2-PyMySQL -y 修改配置文件 #vim /etc/my.cnf.d/openstack.cnf [mysqld] bind-address = 192.168.100.147 default-storage-engine = innodb innodb_file_per_table = on max_connections = 4096 collation-serverETCD快速入门-01 ETCD概述
1.ETCD概述 1.1 ETCD概述 etcd是一个高可用的分布式的键值对存储系统,常用做配置共享和服务发现。由CoreOS公司发起的一个开源项目,受到ZooKeeper与doozer启发而催生的项目,名称etcd源自两个想法,即Linux的/etc文件夹和d分布式系统。/etc文件夹是用于存储单个系统的配置数据的地k8s etcd未授权访问复现
一、测试环境搭建 参考 测试环境说明: etcdctl在本机运行; etcd集群部署在虚拟机中的docker下; 虚拟机环境:CentOS 7; 虚拟机ip:192.168.0.128 首先拉取etcd镜像 docker pull quay.io/coreos/etcd:v3.3.1 # 查看镜像 docker images 创建自定义网络 docker network create --dETCD集群+ TLS认证
目录1、下载etcd cfssl相关命令2、配置文件 /app/etcd/conf/conf.yml3、用系统命令启动,创建 /usr/lib/systemd/system/etcd.service4、用 supervisor启动5、TLS验证6、用户认证重点:新集群中节点启动时,尽量快速同时启动所有节点,单独启动会报错!! 1、下载etcd cfssl相关命令 # 下载et配置ETCD集群使用TLS证书
ETCD集群使用TLS证书 ETCD配置文件 172.20.1.26 ## /etc/etcd/etcd.conf # Member ETCD_NAME=etcd-01 ETCD_DATA_DIR="/apps/etcd/" ETCD_LISTEN_CLIENT_URLS="https://172.20.1.26:2379,https://127.0.0.1:2379" ETCD_LISTEN_PEER_URLS="https://172.20.1.2etcd集群部署
一、创建数据存储目录 mkdir /apps/etcd/ -pv 二、创建配置文件目录 mkdir /etc/etcd/ 三、编辑配置文件 配置文件中的 ETCD_INITIAL_CLUSTER 参数请按需修改 LOCAL_IP="$(ip addr show eth0|grep -Po '(?<=inet )[0-9.]+')" cat > etcd.conf << EOF # Member ETCD_NAME=etcdetcd集群管理
一、成员管理 1. 添加成员 a. 执行增加节点操作 etcdctl member add etcd-04 --peer-urls="http://172.20.1.29:2380" Member 158ed98009d1a70d added to cluster 7191d024b8a252eb ## 下面这些需要写到新节点的配置文件中,添加完成之后,需要修改所有节点配置文件中的 ETCD_INITIAgrpc 和 etcd
gRPC选择 Http2.0 作为基础开源协议,是考虑到 Http 协议在互联网应用的广泛性。同时因为 Http2.0 支持的 Streaming 和 Duplexing 可以将请求和响应消息进行分片交叉传送,可以大幅提升传输效率,GRPC 特色的 Stream 消息正是使用了 Http2.0 的 Streaming 特性。 gRpc架构图:k8s的部署
一、k8s的二进制部署 1.环境准备: IP 节点 172.16.10.1 k8s-master01 172.16.10.3 k8s-master02 172.16.10.10 k8s-node01 172.16.10.20 k8s-node02 172.16.10.11 mETCD 实现服务发现讲解
租约:具有时间有效期,键绑定到租约后,当租约到期失效,绑定到的租约的键也会被删除。 创建租约 etcdctl lease grant 600 lease 694d81f509b7940a granted with TTL(600s) 创建key并绑定到租约 etcdctl put --lease=32695410dcc0ca06 node1 service1 监控键的变化: 监控node1 至 nodk8s控制节点etcd删除并重新加入
1.删除etcd节点 cd /root/etcd-v3.4.13-linux-amd64 cp etcd* /usr/local/bin # 查看etcd节点 [root@master etcd-v3.4.13-linux-amd64]# ETCDCTL_API=3 etcdctl --endpoints 127.0.0.1:2379 --cacert /etc/kubernetes/pki/etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server记一次k8s问题处理 => 6443端口没有监听 => 证书过期处理
原始的问题是这样: The connection to the server 192.168.122.200:6443 was refused - did you specify the right host or port? lsof -i :6443 端口没有监听 master 的kubelet.service 是active的,docker容器api_server是down的 node的 kubelet.service 是 dead, docker容器kubernetes证书到期处理
修改为证书到期前时间 timedatectl set-ntp false timedatectl set-time '2022-02-08 00:00:00' docker start 启动所有未启动的容器 启动kubelet systemctl start kubelet 查看证书过期时间 find /etc/kubernetes/pki -name "*.crt"|xargs -I{} openssl x509 -in {} -noout -datapisix搭建服务apisix-dashboard安装
2022年7月5日13:34:21 注意:这里还需要注意版本的问题,建议使用比较新的版本,不然会出现api不兼容问题 官方文档:https://apisix.apache.org/zh/docs/apisix/how-to-build vi /etc/profile 加入一行 ulimit -SHn 65536 source /etc/profile 再次查看ulimit ulimit -n 该安装方法适etcd集群学习-在单机部署
https://github.com/etcd-io/etcd/tags etcd1 mkdir -p /usr/local/etcd1/{conf,data} # cat /usr/local/etcd1/conf/etcd1.yaml name: etcd1data-dir: /usr/local/etcd1/datalisten-client-urls: 'http://192.168.229.182:9012'advertise-client-urls: 'http:Kubernetes——StatefulSet控制器——案例:etcd集群
StatefulSet控制器——案例:etcd集群 Kubernetes 的所有对象都需要持久化存储于 etcd 存储系统中,以确保系统重启或故障恢复后能将它们予以还原。 一、创建 Service 资源 StatefulSet 资源依赖于 Headless Service 为各 Pod 资源提供名称解析服务,其他 Pod 资源可直接使用 DNSetcd
一 概述 背景:近期k8s应用中etcd的功能存在一些困惑,对其进行来单独的学习,能更深入理解k8s中的的一些特性。 1.1 etcd简介 etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言linux下docker按照
安装docker环境 一 docker 安装 1 使用yum安装(root环境执行) yum install docker 2 重启docker服务(root环境执行) systemctl restart docker 3 添加权限允许在 wgame用户下执行docker命令(root环境执行) groupdadd docker usermod -a -G docker wgame 二 docker使用CAK 试题:etcd 备份与恢复
官方文档有关这题的资料如下 https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/configure-upgrade-etcd/ 基于上述方式进行验证 未能成功。 总结成功的方式如下: 关键两步: 1、恢复时 利用--data-dir="/var/lib/etcd" 将数据库文件还原至原来位置。 2、通过重命名/etc/kLAB-04:备份还原ETCD
LAB-04:备份还原ETCD LAB 需求 针对 etcd 实例 https://127.0.0.1:2379 创建一个快照,保存到 /srv/data/etcd-snapshot.db。在创建快照的过程中,如果卡住了,就键入 ctrl+c 终止,然后重试。然后恢复一个已经存在的快照: /var/lib/backup/etcd-snapshot-previous.db执行 etcdctl 命令的LAB-04:备份还原ETCD
LAB-04:备份还原ETCD LAB 需求 针对 etcd 实例 https://127.0.0.1:2379 创建一个快照,保存到 /srv/data/etcd-snapshot.db。在创建快照的过程中,如果卡住了,就键入 ctrl+c 终止,然后重试。然后恢复一个已经存在的快照: /var/lib/backup/etcd-snapshot-previous.db执行 etcdctl 命令的更新 kubernetes 过期证书
问题描述 在Kubernetes Cluster中,在集群初时化时创建的证书1年到期。到期之后,集群的各个组件之间将无法访问 环境概述 属性信息 系统环境 CentOS Linux release 7.7.1908 (Core) 软件版本 Kubernetes v1.19.8 证书管理相关文档 官方文档 - 使用 kubeadm 进行证书管理