etcd

Flannel 安装部署

青春壹個敷衍的年華 提交于 2020-01-19 16:58:34
Flannel Flannel 是 CoreOS 团队针对 Kubernetes 设计的一个覆盖网络(Overlay Network)工具,其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。这次的分享内容将从Flannel的介绍、工作原理及安装和配置三方面来介绍这个工具的使用方法。 Flannel通过给每台宿主机分配一个子网的方式为容器提供虚拟网络,它基于Linux TUN/TAP,使用UDP封装IP包来创建overlay网络,并借助etcd维护网络的分配情况。 Flannel is a simple and easy way to configure a layer 3 network fabric designed for Kubernetes. Flannel原理 Flannel是CoreOS团队针对Kubernetes设计的一个网络规划服务,简单来说,它的功能是让集群中的不同节点主机创建的Docker容器都具有全集群唯一的虚拟IP地址。但在默认的Docker配置中,每个Node的Docker服务会分别负责所在节点容器的IP分配。Node内部得容器之间可以相互访问,但是跨主机(Node)网络相互间是不能通信。Flannel设计目的就是为集群中所有节点重新规划IP地址的使用规则,从而使得不同节点上的容器能够获得"同属一个内网"且"不重复的

kubernetes-二进制部署

走远了吗. 提交于 2020-01-19 11:40:12
systemctl restart kube-proxy systemctl restart kubelet 💗、单点安装文档: https://k8s.abcdocker.com/kubernetes_install.html#toc_1 💗、服务器互信,免密钥登陆: for i in 192.168.2.9;do ssh-keygen -t rsa -P "" -f /root/.ssh/id_rsa expect -c " spawn ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.2.9 expect { " yes/no " {send "yes\r"; exp_continue} " password " {send "666666\r"; exp_continue} " Password " {send "666666\r";} } " done 💗、关闭分区: swapoff -a 💗、关闭防火墙: systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config 💗、测试etcd是否可用: export ETCDCTL_API=3

kubernetes的云中漫步(二)--二进制安装kubernetes集群

让人想犯罪 __ 提交于 2020-01-14 16:02:54
一:集群部署准备工作 1.三台服务器: k8s-master:192.168.122.69 k8s-node-1: 192.168.122.232 k8s-node-2: 192.168.122.68 2.验证MAC和product_uuid的唯一性 检查MAC的唯一性: [ root@k8s-master ~ ] # ip link 1: lo: < LOOPBACK,UP,LOWER_UP > mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: < BROADCAST,MULTICAST,UP,LOWER_UP > mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 52:54:00:90:ee:f3 brd ff:ff:ff:ff:ff:ff [ root@k8s-node-1 ~ ] # ip link 1: lo: < LOOPBACK,UP,LOWER_UP > mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1 link

ETCD 集群部署

喜欢而已 提交于 2020-01-12 23:55:51
0.测试环境 Linux(ubuntu18.04)*3 etcd 3.x 192.168.0.104 节点1 192.168.0.107 节点2 192.168.0.108 节点3 1.安装,可以直接下载二进制,也可以直接apt安装,这里直接apt安装(三个节点都要安装) apt-get update //更新apt apt install etcd //安装etcd export ETCDCTL_API=3 //etcdctl默认2.x的版本操作,这里声明用3.x版本操作 etcdctl version //确认安装成功 2.创建配置文件etcd.conf 目录自己定,我是放在 /etc/etcd3/etcd.conf 三个节点的内容如下(三个节点都要配置)(替换成自己的IP和路径) name: etcd-1 data-dir: /etc/etcd3/data listen-client-urls: http://0.0.0.0:2379,http://127.0.0.1:2379 advertise-client-urls: http://192.168.0.104:2379 listen-peer-urls: http://0.0.0.0:2380 initial-advertise-peer-urls: http://192.168.0.104:2380 initial

k8s部署集群、自定义仓库、上线部署项目

冷暖自知 提交于 2020-01-11 23:45:15
安装k8s+docker集群环境(基于centos7系统) 集群机器: centos-master = 192.168.121.9 centos-minion-1 = 192.168.121.65 centos-minion-2 = 192.168.121.66 centos-minion-3 = 192.168.121.67 1.配置yum源 [centos-master]:cat /etc/yum.repos.d/virt7-docker-common-release.repo [virt7-docker-common-release] name=virt7-docker-common-release baseurl=http://cbs.centos.org/repos/virt7-docker-common-release/x86_64/os/ gpgcheck=0 加载安装包: [centos-master]:yum repolist virt7-docker-common-release virt7-docker-common-release 15 2.安装集群必要软件—-etcd/flannel/kubernetes Etcd服务在k8s集群中用于配置共享和服务发现。 Flannel是针对k8s设计一个网络规划服务

安装OpenShift 4.2.13

♀尐吖头ヾ 提交于 2020-01-11 23:11:06
[root@xxxxxx ocp4]# ls install-config.yaml [root@xxxxxx ocp4]# vi install-config.yaml [root@xxxxxx ocp4]# vi install-config.yaml [root@xxxxxx ocp4]# cat install-config.yaml apiVersion: v1 baseDomain: example.com compute: - hyperthreading: Enabled name: worker replicas: 0 controlPlane: hyperthreading: Enabled name: master replicas: 3 metadata: name: ocp4 networking: clusterNetworks: - cidr: 10.254.0.0/16 hostPrefix: 24 networkType: OpenShiftSDN serviceNetwork: - 172.30.0.0/16 platform: none: {} pullSecret: '*********' sshKey: '***********' [root@xxxxxx ocp4]# cp ~/ocp4/install-config.yaml ~

基于Docker本地运行Kubernetes

偶尔善良 提交于 2020-01-11 16:30:18
基于Docker本地运行Kubernetes 概览 下面的指引将高速你如何通过Docker创建一个单机、单节点的Kubernetes集群。 下图是最终的结果: 先决条件 \1. 你必须拥有一台安装有Docker的机器。 \2. 你的内核必须支持 memory and swap accounting 。确认你的linux内核开启了如下配置: CONFIG_RESOURCE_COUNTERS=yCONFIG_MEMCG=yCONFIG_MEMCG_SWAP=yCONFIG_MEMCG_SWAP_ENABLED=yCONFIG_MEMCG_KMEM=y \3. 以命令行参数方式,在内核启动时开启 memory and swap accounting 选项: GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" 注意:以上只适用于GRUB2。通过查看/proc/cmdline可以确认命令行参数是否已经成功 传给内核: $cat /proc/cmdlineBOOT_IMAGE=/boot/vmlinuz-3.18.4-aufs root=/dev/sda5 ro cgroup_enable=memoryswapaccount=1 第一步:运行Etcd docker run --net=host -d gcr.io/google

etcd 解析

谁都会走 提交于 2020-01-10 17:49:25
Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息。在后面具体的安装环境中,我们安装的etcd的版本是v3.1.5,整个kubernetes系统中一共有两个服务需要用到etcd用来协同和存储配置,分别是: 网络插件flannel、对于其它网络插件也需要用到etcd存储网络的配置信息 kubernetes本身,包括各种对象的状态和元信息配置 注意:flannel操作etcd使用的是v2的API,而kubernetes操作etcd使用的v3的API,所以在下面我们执行 etcdctl 的时候需要设置 ETCDCTL_API 环境变量,该变量默认值为2。 原理 Etcd使用的是raft一致性算法来实现的,是一款分布式的一致性KV存储,主要用于共享配置和服务发现。关于raft一致性算法请参考 该动画演示 。 关于Etcd的原理解析请参考 Etcd 架构与实现解析 。 使用Etcd存储Flannel网络信息 我们在安装Flannel的时候配置了 FLANNEL_ETCD_PREFIX="/kube-centos/network" 参数,这是Flannel查询etcd的目录地址。 查看Etcd中存储的flannel网络信息: $ etcdctl --ca-file=/etc/kubernetes/ssl/ca.pem --cert-file=

etcd集群部署与遇到的坑(转)

删除回忆录丶 提交于 2020-01-09 03:20:00
在k8s集群中使用了etcd作为数据中心,在实际操作中遇到了一些坑。今天记录一下,为了以后更好操作。 ETCD参数说明 —data-dir 指定节点的数据存储目录,这些数据包括节点ID,集群ID,集群初始化配置,Snapshot文件,若未指定—wal-dir,还会存储WAL文件; —wal-dir 指定节点的was文件的存储目录,若指定了该参数,wal文件会和其他数据文件分开存储。 —name 节点名称 —initial-advertise-peer-urls 告知集群其他节点url. — listen-peer-urls 监听URL,用于与其他节点通讯 — advertise-client-urls 告知客户端url, 也就是服务的url — initial-cluster-token 集群的ID — initial-cluster 集群中所有节点 节点迁移 在生产环境中,不可避免遇到机器硬件故障。当遇到硬件故障发生的时候,我们需要快速恢复节点。ETCD集群可以做到在不丢失数据的,并且不改变节点ID的情况下,迁移节点。 具体办法是: 1)停止待迁移节点上的etc进程; 2)将数据目录打包复制到新的节点; 3)更新该节点对应集群中peer url,让其指向新的节点; 4)使用相同的配置,在新的节点上启动etcd进程 etcd配置 node1 编辑etcd启动脚本 /usr

etcdctl命令

拥有回忆 提交于 2020-01-08 19:54:21
官方网站 https://github.com/etcd-io/etcd/tree/master/etcdctl etcdctl -h / # etcdctl --help NAME: etcdctl - A simple command line client for etcd3. USAGE: etcdctl VERSION: 3.2.24 API VERSION: 3.2 COMMANDS: get Gets the key or a range of keys put Puts the given key into the store del Removes the specified key or range of keys [key, range_end) txn Txn processes all the requests in one transaction compaction Compacts the event history in etcd alarm disarm Disarms all alarms alarm list Lists all alarms defrag Defragments the storage of the etcd members with given endpoints endpoint health Checks the