GithubHelp home page GithubHelp logo

xinyu0601 / scaleio-docker Goto Github PK

View Code? Open in Web Editor NEW

This project forked from djannot/scaleio-docker

0.0 2.0 0.0 312 KB

This repository provides Dockerfiles to create a ScaleIO cluster on 3 Docker hosts.

License: Apache License 2.0

scaleio-docker's Introduction

Description

This repository provides Dockerfiles to create a ScaleIO cluster on 3 Docker hosts.

This cluster will provide MDM, TB, SDS and Gateway services. Then, other ScaleIO clients (where the SDC service will be installed) will access the ScaleIO volumes.

It has been tested with ScaleIO 1.31.

This gives anyone the ability to create a clean ScaleIO cluster for test purposes.

Disclaimer: Don't use this for production.

Build

To build the docker images, you need to copy the ScaleIO RPM packages for Red Hat 6 in the 3 directories:

  • scaleio-primary-mdm
  • scaleio-secondary-mdm
  • scaleio-tb

Then, you can simply run the following command in each directory:

docker build .

Run

So, assume you want to create the following setup:

  • ScaleIO TB and SDS - 192.168.1.1 - Using /dev/sdb and /dev/sdc
  • ScaleIO Secondary MDM and SDS - 192.168.1.2 - Using /dev/sdb and /dev/sdc
  • ScaleIO Primary MDM and SDS and API gateway - 192.168.1.3 - Using /dev/sdb and /dev/sdc

Existing data on /dev/sdb and /dev/sdc will be lost.

To create a new cluster, you just need to run the following commands:

  • On 192.168.1.1:
docker run -d -p 9011:9011 -p 7072:7072 --privileged <scaleio-tb-1.31 image you built>
  • On 192.168.1.2:
docker run -d -p 6611:6611 -p 9011:9011 -p 7072:7072 --privileged <scaleio-secondary-mdm-1.31 image you built>
  • On 192.168.1.3:
docker run -d –p 80:80 -p 443:443 -p 6611:6611 -p 9011:9011 -p 7072:7072 --privileged -e IP_DOCKER_HOST=192.168.1.3 -e IP_SECONDARY_MDM=192.168.1.2 -e IP_TB=192.168.1.1 -e DEVICE_LIST=/dev/sdb,/dev/sdc <scaleio-primary-mdm-1.31 image you built>

The docker run command return the id of the docker container. You can then use the docker logs and check that all the commands are correctly executed. Then, the output of the ps and netstat commands are displayed to let you make sure everything is running correctly.

Then, you can access the Primary MDM with the credentials admin / password1?

The credentials are the same for the API gateway. You can use the ScaleIO REST API by sending requests to http://192.168.1.3 or https://192.168.1.3/

You can use also the ScaleIO UI or the scli command to administer the cluster.

If you want to execute commands on the ScaleIO containers, you can use the nsenter tool.

It assumes that you will access the SDS from other hosts where you install the ScaleIO SDC binary.

You don’t have to worry about having clean /dev/sdb and /dev/sdc devices because the SDS are added with the force_clean option.

Licensing

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Support

Please file bugs and issues at the Github issues page. For more general discussions you can contact the EMC Code team at Google Groups. The code and documentation are released with no warranties or SLAs and are intended to be supported through a community driven process.

scaleio-docker's People

Contributors

djannot avatar

Watchers

James Cloos avatar xinyu0601 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.