在VirtualBox上使用Bosh部署Zookeeper集群
安装 VirtualBox
略
$ VBoxManage --version
5.1.22r115126
安装Bosh
$ wget -c https://s3.amazonaws.com/bosh-cli-artifacts/bosh-cli-2.0.48-linux-amd64
$ chmod +x bosh-cli-*
$ sudo mv bosh-cli-* /usr/local/bin/bosh
安装完成后运行下面命令确认安装成功
$ bosh -v
version 2.0.48-e94aeeb-2018-01-09T23:08:07ZSucceeded
$ bosh environments
URL Alias0 environmentsSucceeded
安装依赖库
$ sudo yum install gcc gcc-c++ ruby ruby-devel mysql-devel postgresql-devel postgresql-libs sqlite-devel libxslt-devel libxml2-devel patch openssl
$ gem install yajl-ruby
安装后检查安装是否成功
$ ruby -v
ruby 2.0.0p648 (2015-12-16) [x86_64-linux]
创建Director
$ mkdir vbox
$ cd vbox
$ git clone https://github.com/cloudfoundry/bosh-deployment
使用 “bosh create-env” 创建Director
$ bosh create-env bosh-deployment/bosh.yml \--state state.json \
--vars-store ./creds.yml \
-o bosh-deployment/virtualbox/cpi.yml \
-o bosh-deployment/virtualbox/outbound-network.yml \
-o bosh-deployment/bosh-lite.yml \
-o bosh-deployment/jumpbox-user.yml \
-v director_name=vbox \
-v internal_ip=192.168.50.6 \
-v internal_gw=192.168.50.1 \
-v internal_cidr=192.168.50.0/24 \
-v network_name=vboxnet0 \
-v outbound_network_name=NatNetwork
...
如果要删除上面创建的Director,可以运行下面的命令
$ bosh delete-env bosh-deployment/bosh.yml \--state state.json \
--vars-store ./creds.yml \
-o bosh-deployment/virtualbox/cpi.yml \
-o bosh-deployment/virtualbox/outbound-network.yml \
-o bosh-deployment/bosh-lite.yml \
-o bosh-deployment/jumpbox-user.yml \
-v director_name=vbox \
-v internal_ip=192.168.50.6 \
-v internal_gw=192.168.50.1 \
-v internal_cidr=192.168.50.0/24 \
-v network_name=vboxnet0 \
-v outbound_network_name=NatNetwork
...
给上面创建的Director设置别名
$ bosh alias-env vbox -e 192.168.50.6 --ca-cert <(bosh int ./creds.yml --path /director_ssl/ca)
Using environment '192.168.50.6' as anonymous userName vbox
UUID 91478351-44a7-4bbb-b7b3-fd55ed1c19cd
Version 264.7.0 (00000000)
CPI warden_cpi
Features compiled_package_cache: disabled config_server: disabled dns: disabled snapshots: disabled
User (not logged in) Succeeded
设置用户并登录
$ export BOSH_CLIENT=admin
$ export BOSH_CLIENT_SECRET=`bosh int ./creds.yml --path /admin_password`
$ bosh -e vbox env
Using environment '192.168.50.6' as client 'admin'Name vbox
UUID 91478351-44a7-4bbb-b7b3-fd55ed1c19cd
Version 264.7.0 (00000000)
CPI warden_cpi
Features compiled_package_cache: disabled config_server: disabled dns: disabled snapshots: disabled
User admin Succeeded
为了后面我们可以使用ssh登录虚拟机,我们还需要使用下面的命令建立路由
$ sudo ip route add 10.244.0.0/16 via 192.168.50.6
或
$ sudo route add -net 10.244.0.0/16 gw 192.168.50.6
部署Zookeeper
首先,更新一下云配置文件
$ bosh -e vbox update-cloud-config bosh-deployment/warden/cloud-config.yml
Using environment '192.168.50.6' as client 'admin'+ azs:
+ - name: z1
+ - name: z2
+ - name: z3+ vm_types:
+ - name: default+ compilation:
+ az: z1
+ network: default
+ reuse_compilation_vms: true
+ vm_type: default
+ workers: 5+ networks:
+ - name: default
+ subnets:
+ - azs:
+ - z1
+ - z2
+ - z3
+ dns:
+ - 8.8.8.8
+ gateway: 10.244.0.1
+ range: 10.244.0.0/24
+ reserved: []
+ static:
+ - 10.244.0.34
+ type: manual+ disk_types:
+ - disk_size: 1024
+ name: defaultContinue? [yN]: ySucceeded
更新虚拟机模板
首先使用 “bosh -e vbox stemcells” 查看一下,如下,可以看到目前没有任何虚拟机模板。
$ bosh -e vbox stemcells
Using environment '192.168.50.6' as client 'admin'Name Version OS CPI CID (*) Currently deployed0 stemcellsSucceeded
更新虚拟机模板
$ bosh -e vbox upload-stemcell https://bosh.io/d/stemcells/bosh-warden-boshlite-ubuntu-trusty-go_agent?v=3468.17 --sha1 1dad6d85d6e132810439daba7ca05694cec208ab或者$ wget -c https://bosh.io/d/stemcells/bosh-warden-boshlite-ubuntu-trusty-go_agent?v=3468.17
$ bosh -e vbox us bosh-warden-boshlite-ubuntu-trusty-go_agent\?v\=3468.17
上面的命令会比较慢,更新再次查询虚拟机模板,可以看到已经下载了新的模板。
$ bosh -e vbox stemcells
Using environment '192.168.50.6' as client 'admin'Name Version OS CPI CID
bosh-warden-boshlite-ubuntu-trusty-go_agent 3468.17 ubuntu-trusty - b1e5983d-ab18-4e36-6877-1ebe5e8582d6 (*) Currently deployed1 stemcellsSucceeded
部署Zookeeper
$ wget -c https://raw.githubusercontent.com/cppforlife/zookeeper-release/master/manifests/zookeeper.yml
$ bosh -e vbox -d zookeeper deploy zookeeper.yml
...
运行上面部署命令后可以使用下面命令来查看服务状态
$ bosh -e vbox -d zookeeper instances
Using environment '192.168.50.6' as client 'admin'Task 23. DoneDeployment 'zookeeper'Instance Process State AZ IPs
smoke-tests/bb0b0f87-5a59-489f-b3ca-1bdfd5a8167f - z1 10.244.0.7
zookeeper/40dc99e8-17f0-4c8d-bda1-670cf24490d5 running z3 10.244.0.6
zookeeper/48cce3c4-b4c2-46bc-947d-da1b3f255561 running z1 10.244.0.2
zookeeper/8926bddb-2986-44a6-b8e6-337fa2ac2c4f running z2 10.244.0.4
zookeeper/970b4886-ca4e-4f91-9a27-6d93e151ae0c running z1 10.244.0.3
zookeeper/eea5d292-1473-4849-956c-25e196de8e0a running z2 10.244.0.5 6 instancesSucceeded
查看虚拟机信息
$ bosh -e vbox vms
Using environment '192.168.50.6' as client 'admin'Task 24. DoneDeployment 'zookeeper'Instance Process State AZ IPs VM CID VM Type Active
zookeeper/40dc99e8-17f0-4c8d-bda1-670cf24490d5 running z3 10.244.0.6 dfe4e8f6-376c-4046-4929-58c9ae16a1c0 default false
zookeeper/48cce3c4-b4c2-46bc-947d-da1b3f255561 running z1 10.244.0.2 3ab39e75-9c65-415f-67b1-fb66982750b4 default false
zookeeper/8926bddb-2986-44a6-b8e6-337fa2ac2c4f running z2 10.244.0.4 46f42f6f-2741-4c02-5330-fdf2e713e2ae default false
zookeeper/970b4886-ca4e-4f91-9a27-6d93e151ae0c running z1 10.244.0.3 c211408e-50c5-4daa-4aad-192d037489f2 default false
zookeeper/eea5d292-1473-4849-956c-25e196de8e0a running z2 10.244.0.5 5339825b-ee47-42dd-402e-4b9da39e1b26 default false 5 vmsSucceeded
如果要删除 Zookeeper Development,执行下面命令
$ bosh -e vbox -d zookeeper delete-deployment
SSH访问虚拟机
如果我们想使用ssh登录虚拟机,可以运行下面命令
$ bosh -e vbox -d zookeeper ssh <vm>比如:$ bosh -e vbox -d zookeeper ssh zookeeper/40dc99e8-17f0-4c8d-bda1-670cf24490d5
测试Zookeeper
$ bosh -e vbox -d zookeeper run-errand smoke-tests
在VirtualBox上使用Bosh部署Zookeeper集群相关推荐
- ZooKeeper :Docker Compose部署ZooKeeper集群
用于Docker Compose部署ZooKeeper集群的yaml文件: version: '3' networks:zookeeper-networks:driver: bridgeservice ...
- Docker部署Zookeeper集群
Docker部署Zookeeper集群 官方网站: http://zookeeper.apache.org/ http://zookeeper.apache.org/doc/r3.4.8/zookee ...
- 使用K8S部署zookeeper集群
1.目的: 本次的目的是通过使用k8s搭建一个三节点的zookeeper集群,因为zookeeper集群需要用到存储,所以我们需要准备三个持久卷(Persistent Volume) 简称就是PV. ...
- 在VirtualBox上使用Bosh部署Cloud Foundry
安装Bosh 安装 VirtualBox 略 $ VBoxManage --version 5.1.22r115126 安装Bosh $ wget -c https://s3.amazonaws.co ...
- k8s部署zookeeper集群 运行 ZooKeeper, 一个 CP 分布式系统
本教程展示了在 Kubernetes 上使用 StatefulSets,PodDisruptionBudgets 和 PodAntiAffinity 特性运行 Apache Zookeeper. 准备 ...
- 【alibaba cloud】在macM1上用docker部署nacos集群
前提环境 Docker Desktop 组件搭建 Nacos 环境部署(单机) 先从git上克隆nacos-docker的docker-compose的yml文件 git clone https:// ...
- 在单机(物理机)上用虚拟机部署kubernetes集群
1.部署虚拟机 详细步骤可以查看我的这篇博客 2.部署k8s (1)准备 搭建K8S集群,准备三台2核4G的虚拟机(内存⾄少2G以上),操作系统选择⽤centos 7以上版本,先在三台机器上装好doc ...
- 如何在两个k8s上使用kubefate部署fate集群?
本文作者系VMware中国研发中心研发工程师 马陈龙 目标 本文将介绍如何使用kubefate在两个kubernetes集群上部署互通的两个FATE.这两个FATE可以完成各种联邦学习的任务. 完成后 ...
- [Mac/Minikube] 使用K8s搭建ZooKeeper集群
前言 相关的教程很多, 但是也很乱. 自己整理一篇. 使用过程中还遇到一些问题, 顺手记录一些. 创建PV 一般的PV都是创建在集群, 使用NFS共享管理的. 但是本次实验只有一台机器. 所以简单一点 ...
最新文章
- Java开发必会的Linux命令
- SQLite主键自增需要设置为integer PRIMARY KEY
- Google Chrome —— 使用 PowerShell 命令安装 Google Chrome 浏览器
- Python处理pdf文件库 - PyPDF2详解
- JavaScrpt --- es5实现ES6的Number扩展(部分)
- IDEA MAVEN Project 显示问题
- 2019 最全支付宝高级Java现场面试37题
- 如果谁和飞鸽传书讨论这两个问题
- 复旦nlp实验室 nlp-beginner 任务二:基于深度学习的文本分类
- 超全的 Python 可视化教程,收藏
- 图像测试环境软件,Digimizer(图像测量分析软件)
- ALFA缺陷检测软件外观检测自学习人工智能软件
- php网站制作(6)-php 学习摘记
- 双搜----用两只眼睛看世界
- JS 中国标准时间转换yy-mm-dd HH:mm:ss
- 记录12款MacBook Pro MC946,A1398拆主板换新喇叭的过程
- 基于51的交通灯Proteus仿真设计
- tableau连接不上oracle,Oracle
- dsa数字签名c语言编程,实验三DSA数字签名算法
- AutoCAD 使用平铺视口
热门文章
- vue : 无法加载文件(因为在此系统上禁止运行脚本)
- 中鑫优配惯性回踩将是低吸机会
- 低代码分析盘点:银行业低代码应用需要规避两大误区
- 免费的录频软件WIN10的WIN+G
- sap basis 常用事务代码
- Centos7 配置 Vmess
- 自己整理_银行核心系统相关技术知识
- UR3机器人与EFG-20电动夹爪的连接
- DL之RNN:人工智能为你写小说——基于TF利用RNN算法训练数据集(William Shakespeare的《Coriolanus》)替代你写英语小说短文、训练测试过程全记录
- 第四章 决策树和ID3 python3.5.1代码理解