Skip to content

wjk940/minio-boshrelease

Repository files navigation

BOSH Minio Release

BOSH allows users to easily version, package and deploy software in a reproducible manner. This repo provides BOSH release of Minio Object Storage Server. You can use this release to deploy Minio in standalone, single-node mode as well as in distributed mode on multiple nodes.

To get started from scratch with the BOSH Minio release locally, you can follow the steps below starting with installing bosh-lite. If you already have a BOSH installation available, you can jump straight to the Create and upload BOSH release section.

Install bosh-lite and bosh_cli

Upload stemcell to BOSH

Stemcell is a versioned Operating System image wrapped with IaaS specific packaging. You'll need to provide the bosh-lite Warden stemcell. You can download it from here.

Once downloaded, use the command below to upload it to your VM:

bosh upload stemcell ~/Downloads/bosh-stemcell-3363.12-warden-boshlite-ubuntu-trusty-go_agent.tgz --skip-if-exists

Create and upload the BOSH release

bosh create release --force
    Please enter development release name: minio
bosh upload release

Create manifest from examples files in manifests

Copy a manifest from the manifests/ directory and replace the director_uuid field with the one from your BOSH director.

The UUID to put in the manifest can be found with:

bosh status

Deploy

Standalone Minio deployment

Set the deployment manifest by providing the name of your manifest, for example:

bosh deployment manifest/manifest-fs.yml

Then run the deploy command:

bosh deploy

With the default settings (in example manifest), you should be able to access the minio server at http://10.244.0.2:9001.

Test with the mc tool:

###### Using settings in the example manifest ######
mc config host add boshminio http://10.244.0.2:9001 minio minio123
# Test it out:
mc ls boshminio
mc mb boshminio/bucket
mc cp /etc/issue boshminio/bucket/

Distributed Minio deployment

For deploying a distributed version, set the number of desired instances in the manifest file along with that many static_ips in the jobs section of the manifest, as shown in the example manifest.

With the default settings (in example manifest), you can test the deployment with mc as follows:

mc config host add boshminio1 http://10.244.0.2:9001 minio minio123
mc config host add boshminio2 http://10.244.0.3:9001 minio minio123
mc config host add boshminio3 http://10.244.0.4:9001 minio minio123
mc config host add boshminio4 http://10.244.0.5:9001 minio minio123

mc mb boshminio1/bucket # Create a bucket
mc ls boshminio{1..4} # List all the 4 minio endpoints. Should see the
                      # bucket printed four times.

Releases

No releases published

Packages

No packages published