Documente Academic
Documente Profesional
Documente Cultură
Agenda
Brief Introduction to the BDE architecture
Demo: (Classic) BDE for provisioning Hadoop clusters with Cloudera Manager
Introduction to the Mesos Architecture
Demo: BDE deploys a Mesos cluster and allows Docker containers to be run
Using Chronos
Using Marathon
How it Works
BDE Client
Virtual Appliance
Management
Management
Server
Server
Template
Template
Cluster
Cluster Node
Node
Cluster
Cluster Node
Node
Virtualization Platform
vCenter
Host
Host
Host
Host
Host
Host
Host
Host
Host
Host
Overview
Developers in the enterprise are building applications in containers
Mesos and Kubernetes are popular container cluster schedulers
BDE is extended to make it simple to run Kubernetes and Mesos on vSphere
Enterprise IT can leverage extended BDE to build an on-premise container
offering
/opt/serengeti/samples/mesos_cluster.json
After the cluster is created,
Go to http://<mesos master ip>:5050/ to visit the Mesos homepage.
Or go to http://<mesos master ip>:8080/ to visit the Marathon homepage, and submit jobs.
Or go to http://<mesos master ip>:4400/ to visit the Chronos homepage, and submit jobs.
Or login to one of the mesos slave node to submit a simple job
CONFIDENTIAL
Mesos Architecture
CONFIDENTIAL
CONFIDENTIAL
User can create a K8S cluster use BDE CLI as well (more details on wiki )
Login to BDE server and set VC connection params in sample cluster spec file
/opt/serengeti/samples/kubernetes_cluster.json
/opt/serengeti/samples/kubernetes_cluster.json yes
After the cluster is created, login the K8S Workstaion node to launch docker containers.
cd $KUBE_HOME; kubecfg.sh list minions
kubecfg.sh -p 9080:80 run 10.141.73.118:5000/nginx 2 myNginx
CONFIDENTIAL
CONFIDENTIAL
{
"nodeGroups":[
{
"name": "workstation",
"roles": [
"kubernetes_workstation"
],
"instanceNum": 1,
"cpuNum": 1,
"memCapacityMB": 7500,
"storage": {
"type": "LOCAL",
"sizeGB": 1
},
"haFlag": "off"
},
{
"name": "master",
"roles": [
"kubernetes_master"
],
"instanceNum": 1,
"cpuNum": 1,
"memCapacityMB": 7500,
"storage": {
"type": "SHARED",
"sizeGB": 1
},
"haFlag": "on"
},
{
"name": "minion",
"roles": [
"kubernetes_minion"
],
"instanceNum": 4,
"cpuNum": 1,
"memCapacityMB": 7500,
"storage": {
"type": "LOCAL",
"sizeGB": 1
},
"placementPolicies": {
"instancePerHost": 1
},
"haFlag": "off"
}
CONFIDENTIAL
10
"configuration": {
"kubernetes": {
"env": {
"GOPATH": "/opt/kubernetes/src/go",
"GOVC_URL": "https://root:vmware@10.111.88.43/sdk",
"GOVC_DATACENTER": "SingaporeDataCenter",
"GOVC_DATASTORE": "kubernetes",
"GOVC_RESOURCE_POOL": "/SingaporeDataCenter/host/BigDataCluster/Resources/",
"GOVC_NETWORK": "vlan883",
"GOVC_GUEST_LOGIN": "serengeti:password",
"GOVC_INSECURE": "1",
"KUBE_USER": "serengeti",
"INSTANCE_RESOURCE_POOL": "/SingaporeDataCenter/vm/SERENGETI-vApp-M9GA"
}
}
}
}
CONFIDENTIAL
11
CONFIDENTIAL
12
Why BDE
For users
Create/manage a cluster of VMs in an scale-out application as a whole
A simple language describes the connection between application and
infrastructure
A extensible framework for DevOps in virtual infrastructure
For VMware
BDE is a proven tool to manage clustered workload at scale
BDE is a automation layer to make the scale-out workload oriented VM level
primitives usable to end users.
BDE is a very agile release vehicle that can meet the ever changing market.
Async release with vSphere
Backed by OSS project Serengeti
CONFIDENTIAL
13
Future work
Make the developers experience consistent
Reduce/remove the vSphere information in the developer tools
Use lightweight OS for containers (e.g. CoreOS)
Use VMFork technology to provision clusters super fast
CONFIDENTIAL
14
CONFIDENTIAL
15