看这里,http://www.cnblogs.com/lihaoyang/p/8358153.html 1,先使用可视化客户端软件 ZooInspector 连接上集群中的一个节点,看下zk的结构: 2,命令:Zookeeper 操作shell bin/zkClient.sh 进入zookeeper客户端 根据提示命令进行操作 1,查找 : ls  /      ls /zookeeper 可以看到跟使用客户端软件看到的效果一样,根节点下有个zookeeper,zookeeper下有个quota…
搭建背景 企业环境中使用Docker环境,一般出于安全考虑,业务使用的镜像一般不会从第三方公共仓库下载.那么就要引出今天的主题 企业级环境中基于Harbor搭建自己的安全认证仓库 介绍 名称:Harbor 官网:https://github.com/vmware/harbor 简介:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distribution.作为一个企业级私有Regist…
kubernetes集群搭建(1):环境准备 中各节点已经安装好了docker,请确认docker已启动并正常运行 1.通过命令启动私库 docker run -d -p 5000:5000 --privileged=true -v /data/history:/data/registry registry 2.确认启动成功 [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ce…
一.环境准备 Kubernetes支持在物理服务器或虚拟机中运行,本次使用虚拟机准备测试环境,硬件配置信息如表所示: IP地址 节点角色 CPU Memory Hostname 磁盘 192.168.56.10 master >=2c >=2G master sda.sdb 192.168.56.11 worker >=2c >=2G node1 sda.sdb 192.168.56.12 worker >=2c >=2G node1 sda.sdb 注:在所有节点上进…
kubernetes集群搭建(kubeadm方式) kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具.这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 kubeadm init # 将一个 Node 节点加入到当前集群中 kubeadm join <Master节点的IP和端口 > 安装要求 一台或多台机器,操作系统 CentOS7.x-86_x64 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或…
Kubernetes的几种部署方式 1. minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用.不能用于生产环境. 2. kubeadm Kubeadm也是一个工具,提供kubeadm init和kubeadm join指令,用于快速部署Kubernetes集群. 3. 二进制包 从官方下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群. 小结: 生产环境中部署Kubernetes集群,只有…
一. kubectl概述 Kubectl是用于控制Kubernetes集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署. kubectl命令的语法如下所示: kubectl [command] [TYPE] [NAME] [flags] comand:指定要在一个或多个资源执行,例如操作create,get,describe,delete. TYPE:指定资源类型,资源类型不区分大小写,您可以指定单数,复数或缩写形式.例如,以下命令产生相同的输出…
目录 部署方式 1. 基础环境准备 1.1 基础初始化 1.2 安装docker 2. 部署harbor及haproxy高可用反向代理 2.1 镜像加速配置 2.2 高可用master可配置 3. 初始化master节点 4. 初始化node节点 5. master节点kubeadm init初始化 5.1基于文件初始化master节点 5.2 将其他master主机加入集群(扩容master ) 6. 验证master节点状态 6.1 安装flannel网络插件 6.2 查看集群状态 6.3…
目录 一.前置知识点 二.kubeadm部署方式介绍 三.安装要求 四.最终目标 五.准备环境 六.环境初始化 6.1 设置系统主机名以及Hosts文件的相互解析 6.2 安装依赖文件(所有节点) 6.3 禁用iptables和firewalld服务(所有节点) 6.4 禁用Swap分区和SELinux(所有节点) 6.5 调整内核参数,对于K8S(所有节点) 6.6 调整系统时区(所有节点,选做) 6.7 设置rsyslogd和systemd journald(所有节点,选做) 6.8 安装D…
小伙伴们,好久不见,这几个月实在太忙,所以一直没有更新,今天刚好有空,咱们继续k8s的学习,由于我们后面需要深入学习Pod的调度,所以我们原先使用MiniKube搭建的实验环境就不能满足我们的需求了,我们这一节将使用kubeadm搭建Kubernets集群. 一.虚拟机创建 我们的集群包含三个节点kubevm1.kubevm2.kubevm3,其中kubevm1作为Master 我们首先需要使用Virtualbox创建一个虚拟机,步骤如下: 1.新建虚拟机 我们设置内存2G,硬盘20G,CPU…
环境 两台或多台腾讯云服务器(本人搭建用了两台),都是 CentOs 7.6, master 节点:服务器为 4C8G,公网 IP:124.222.61.xxx node1节点:服务器为 4C4G,公网 IP:101.43.182.xxx 修改 hosts 信息: 在 master 节点和 node 节点的 hosts 文件中添加节点信息 $ vim /etc/hosts 124.222.61.xxx master 101.43.182.xxx node1 这里的 master 和 node1…
1. 创建Nginx Pod过程中报如下错误: #kubectlcreate -f nginx-pod.yaml Error from server: error when creating "nginx-pod.yaml": Pod "nginx" is forbidden: no API token found for service account default/default, retry after the token is automatically…
本文完整源码地址 基于zookeeper的常用用法.分布式锁.分布式队列及leader选举实现 https://github.com/killianxu/zookeeper_example zookeeper集群搭建 1.linux下安装jdk yum list java* yum install java-1.8.0-openjdk-devel.x86_64 查看jdk是否安装:java -version 2.下载apache-zookeeper-3.5.5-bin.tar.gz,tar -z…
本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版,安装包地址请到公众号内回复[K8s实战]获取 今天终于到正题了~~ 生成kubernets证书与私钥 1. 制作kubernetes ca证书 [root@master-01 ~]# cd /etc/kubernetes/ssl/[root@master-01 ~]#cat << EOF | tee ca-config.json{"signing": {"default": {"exp…
工作环境: 主机名 IP 系统 master 192.168.199.6 rhel7.4 node1 192.168.199.7 rhel7.4 node2 192.168.199.8 rhel7.4 [root@master ~]#yum install kubernetes etcd flannel -y [root@node1 ~]#yum install kubernetes flannel -y [root@node2 ~]#yum install kubernetes flannel…
由于K8s搭建时官方提供的镜像不FQ是访问不了的,所以搭建过程中很多时间都耗费在去找镜像去了 下面是我搭建k8s集群用到的镜像  没有采用之前我用的二进制文件搭建(dns没成功),这里采用的Kubeadm方式 https://www.kubernetes.org.cn/3808.html 我导出的镜像下载地址:https://pan.baidu.com/s/1LIAno-aC1cuJLDxFadTrTQ docker 镜像导出 docker save $(docker images | grep…
1.master节点上执行: yum -y install kubernetes flannel etcd 2.修改etcd配置为: [root@k8s-master ~]# vi /etc/etcd/etcd.conf ETCD_NAME=default ETCD_DATA_DIR="/var/lib/etcd/default.etcd" ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379" ETCD_ADVERTISE_CL…
REST API用途 elasticsearch支持多种通讯,其中包括http请求响应服务,因此通过curl命令,可以发送http请求,并得到json返回内容. ES提供了很多全面的API,常用的REST请求大致可以分成如下几种: 1 检查集群.节点.索引的健康情况 2 管理集群.节点,索引数据.元数据 3 执行CRUD,创建.读取.更新.删除 以及 查询 4 执行高级的查询操作,比如分页.排序.脚本.聚合等 Query DSL Query DSL (资料来自: http://www.elast…
前言: Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用.它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便. Redis支持主从同步.数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器.这使得Redis可执行单层树复制.存盘可…
实验室有一个Linux集群,本文做一下记录. SSH相关命令 通过SSH登录集群中的其他机器上的操作系统(或虚拟机中的操作系统).操作系统之间已经设置免密码登录. 1. 无选项参数运行 SSH 通常使用 SSH 的方式就是不加任何选项参数,仅仅输入 "ssh".下面是示例: $ ssh 192.168.0.103 注意这样是在 ssh 进程端口号22, 目标主机用户和当前用户同名的情况下. 2. 指定登陆用户 默认的,ssh 会尝试用当前用户作为用户名来连接.在上面的示例命令中,ssh…
本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版,安装包地址请到公众号内回复[K8s实战]获取 Flannel是CoreOS提供用于解决Dokcer集群跨主机通讯的覆盖网络工具.它的主要思路是:预先留出一个网段,每个主机使用其中一部分,然后每个容器被分配不同的ip:让所有的容器认为大家在同一个直连的网络,底层通过UDP/VxLAN等进行报文的封装和转发. 架构介绍 Flannel默认使用8285端口作为UDP封装报文的端口,VxLan使用8472端口. K8s的有很多CNI(网络网络接…
介绍 etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点. 简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过gRPC提供接口调用 安全:支持TLS通信,并可以针对不同的用户进行对key的读写控制 高性能:10,000 /秒的写性能 本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版,安装包地址请到公众号内回复[K8s实战]获取 注: K8s的集群相关数据是存放在Etcd中的,所有我们得先部署 架构…
以简单部署访问来演示kubernetes的基本使用 流程: 用户访问client应用,client应用中调用server应用,由于部署了多节点,client在访问server时应该配置server 暴露的虚拟IP地址 由于DNS暂未配置成功,在client调用server时配置的是server的cluster ip而不是服务名 server端与client端均为springboot web应用 1.代码示例: server端代码:打包为server.jar @RestController pub…
https://www.cnblogs.com/pilihaotian/p/5846173.html REST API用途 ES提供了很多全面的API,大致可以分成如下几种: 1 检查集群.节点.索引的健康情况 2 管理集群.节点,索引数据.元数据 3 执行CRUD,创建.读取.更新.删除 以及 查询 4 执行高级的查询操作,比如分页.排序.脚本.聚合等 查看集群状态 可以通过CURL命令发送REST命令,查询集群的健康状态: curl 'localhost:9200/_cat/health?v…
三个阶段部署docker:https://www.cnblogs.com/rdchenxi/p/10381631.html 环境准备 [root@master ~]# hostnamectl set-hostname master && exec bash [root@node01 ~]# hostnamectl set-hostname node01 && exec bash [root@node02 ~]# hostnamectl set-hostname node02…
kubectl create -f xxxx.yaml #创建rc.deploy.svc等 kubectl delete -f xxxx.yaml #删除对应的创建 kubectl get pods #获取默认namaspace(default)下的pod kubectl get pods --all-namespance #获取所有namespace下的pod kubectl get pods -n kube-system #获取某namespace下的pod  -n  namespance…
尤其在创建pod的时候,会遇见各类问题,请通过下列命令来查看错误详情 kubectl describe pod xxxxxx 1.问题现象:镜像始终获取不下来 解决办法:为docker设置镜像源 [root@k8s-master ~]# vi /etc/sysconfig/docker # /etc/sysconfig/docker # Modify these options if you want to change the way the docker daemon runs OPTION…
下列所有操作需要在所有node节点上操作,并注意红色部分的修改 1.node节点不需要安装etcd来存储相关信息 yum -y install flannel kubernetes 2.修改flanneld网络相关信息 [root@k8s-node1 ~]# vi /etc/sysconfig/flanneld # Flanneld configuration options FLANNEL_ETCD="http://k8s-master:2379" # etcd url locati…
了解kubernets 本次搭建采用的是1个master节点,2个node节点,一个私有docker仓库 1.设置各节点ip信息 2.设置hostname(其它节点也需修改) vi /etc/sysconfig/network HOSTNAME=master 3.设置hosts信息 [root@k8s-master ~]# vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdoma…
抱歉,多次尝试,均未成功,后续将通过二进制安装再次尝试…