Giter VIP home page Giter VIP logo

docs-bosh's Introduction

General documentation for BOSH. We render these docs with mkdocs using a slightly-adapted material theme, and you can find a rendered version of these docs at bosh.io/docs.

Production

Commits made to the master branch of this repo will trigger a councourse build which will automatically push changes live.

Development

For local development:

  • Clone this repo.
  • Initialize the submodule (external/bpm-release).
  • Use Docker start a local server.
git clone https://github.com/cloudfoundry/docs-bosh.git
cd docs-bosh

git submodule update --init --recursive

# for quick development reloads
docker run --rm -it -p 8000:8000 -v "${PWD}:/docs" \
  squidfunk/mkdocs-material:2.7.2 \
  -- serve --dev-addr=0.0.0.0:8000 --dirtyreload

# for a production-like build environment (link checking, etc.)
docker run --rm -it -p 8000:8000 -v "${PWD}:/docs" \
  squidfunk/mkdocs-material:2.7.2

You can then make changes in a text editor, and refresh in a local browser at http://localhost:8000/.

docs-bosh's People

Contributors

abelhu avatar animatedmax avatar araher avatar aramprice avatar beyhan avatar bgandon avatar bingosummer avatar cppforlife avatar cunnie avatar dpb587-pivotal avatar elenasharma avatar fmoehler avatar freddesbiens avatar gberche-orange avatar gossion avatar gu-bin avatar h4xnoodle avatar jfmyers9 avatar jpalermo avatar ljfranklin avatar mfine30 avatar miguelverissimo avatar mrosecrance avatar pivotal-jamil-shamy avatar ramonskie avatar rkoster avatar selzoc avatar vasyltretiakov avatar voelzmo avatar ystros avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs-bosh's Issues

Ubuntu trusty installation instructions do not work

The bosh_cli instructions mention that ruby 2+ is required, but the instructions for Ubuntu trusty install ruby 1.9.

Instead of ruby and ruby-dev, ruby2.0 and ruby2.0-dev should be installed. Instead of calling gem to install, gem2.0 should be used.

VPC subnets are not public by default

I followed instructions in this tutorial and all cf instances have only private ip. So they can't download buildpacks and use S3 storage.

To prevent this user should explicitly change Auto-assign Public IP subnet property to yes.

AWS VPC Creation Wizard is no longer the same

On [this page][http://docs.cloudfoundry.org/bosh/deploy-microbosh-to-aws.html] under the Create a Virtual Private Cloud header the flow for the wizard has changed substantially and has become much simpler. Here is a screenshot of the new style:

screen shot 2014-10-08 at 10 57 30

BOSH Agent will run a hook script after a job installation is completed, but it's missed in Doc

From cloudfoundry/cf-docs#210:

Here docs/running/bosh/reference/jobs.html.md mentioned the “prepare" script, but didn't mention the "post_install" script which gets invoked after BOSH Agent installs the job. This script might be very helpful for some cases which need to do some post install work.

Here is the implementation: https://github.com/cloudfoundry/bosh/blob/master/bosh_agent/lib/bosh_agent/apply_plan/job.rb#L145

/cc @JimmyMa

bosh sample manifest default disk size is to small

As discussed on https://groups.google.com/a/cloudfoundry.org/d/msg/bosh-users/RHFPYaEy9FE/SKEo8SAICskJ

The bosh sample manifest has invalid default disk sizing

The net effect is that stemcell upload and release upload fail (silently), making it harder for new users to debug and diagnose the issue.

 $ bosh upload stemcell ~/code/bosh-stemcell-1471_2-vsphere-esxi-ubuntu.tgz 
Verifying stemcell...
File exists and readable                                     OK
Verifying tarball...
Read tarball                                                 OK
Manifest exists                                              OK
Stemcell image file                                          OK
Stemcell properties                                          OK
Stemcell info
-------------
Name:    bosh-vsphere-esxi-ubuntu
Version: 1471.2
Checking if stemcell already exists...
No
Uploading stemcell...
bosh-stemcell: 100% |ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo| 395.9MB 617.5KB/s Time: 00:10:56

gberche@ruby-desktop2 ~/code/integration-configuration-reference/configuration-reference-qa/bosh/deployments/cf04 (master) $ bosh stemcells
No stemcells
gberche@ruby-desktop2 ~/code/integration-configuration-reference/configuration-

What about moving the sample manifests out of docs-bosh into https://github.com/cloudfoundry/bosh/tree/master/release/examples and make sure that they get tested as part of CI ?

Also wouldn't it be safer to suggest new users to use ubuntu stemcells rather than centos ones on which there might be less confidences (I'm not sure how to read the status of the centos epic on https://www.pivotaltracker.com/s/projects/956238 and whether it's actually complete)

[question] What about bosh versions?

Hey, all.

I've always wanted to ask if you are planning to add tags for BOSH versions to your docs? Sometimes it is hard to keep track of the version of BOSH that is described in articles. Hope this will solve this problem.

Thank you,
Alex L.

"Bosh Lite Director" name is not compatible with credhub

Hi,
The name of the director suggested in this example:
https://github.com/cloudfoundry/docs-bosh/blob/master/bosh-lite.html.md.erb#L52
is not compatible with Credhub - if you add Credhub to your bosh deployment and then try to deploy something using Credhub to generates credentials, it fails because by default credentials will be located under /director_name/deployment_name/credential_name and "Bosh Lite Director" is not a valid path (spaces are not allowed).

`director_uuid` is listed as `required` in both V1 and V2 schema, this seems wrong

The docs for the CLI V2 clearly state that the V2 cli ignores this attribute:

bosh deploy no longer checks or requires director_uuid in the deployment manifest to achieve similar safety make sure to give unique deployment names across environments

This is in contradiction with what the schema docs are saying:

Here: https://bosh.io/docs/deployment-manifest.html#deployment
and here: https://bosh.io/docs/manifest-v2.html#deployment

director_uuid [String, required]: This string must match the UUID of the currently targeted Director for the CLI to allow any operations on the deployment.

I'm guessing this is at least wrong for the V2 schema, not so sure about the V1 schema. Please clarify the docs around when, if ever, the director_uuid property is required.

VT-X

Hi -

Trying to create a concourse / BOSH on a GCP VM. Would work, except that VT-X isn't available, so the process fails with:

Deploying:
Creating instance 'concourse/0':
Creating VM:
Creating vm with stemcell cid 'sc-275e94b1-daf9-4b1d-5d80-a272d93994e4':
CPI 'create_vm' method responded with error: CmdError{"type":"Bosh::Clouds::CloudError","message":"Creating VM with agent ID '{{b3afbdc5-52dc-4300-62ac-9819f32f2708}}': Starting VM: Retried '30' times: Running command: 'VBoxManage startvm vm-8263717c-e371-4bf8-6ef1-62e75e6a9121 --type headless', stdout: 'Waiting for VM "vm-8263717c-e371-4bf8-6ef1-62e75e6a9121" to power on...\n', stderr: 'VBoxManage: error: VT-x is not available (VERR_VMX_NO_VMX)\nVBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole\n': exit status 1","ok_to_retry":false}

Exit code 1

Unfortunately I can't manually modify the VM once it is in the loop for starting. Is there any way to insert the appropriate "VBoxManage modifyvm.. " commands after creating the VM but before starting it? There is no way to define a global default for no VT-X on vbox.

Missing documentation: max_in_flight supports percentages

It would be nice to have this documented, as well as some explanation of the nuances around what this means in practice when there are multiple AZs. In fact, those nuances even for the integer (non-percentage) case would be nice to have documented as well.

Template for OpenStack missing 'tenant'

The template file used for OpenStack needs a property tenant to work properly. The tenant is apparently the same as project, so maybe this changed and project is no longer required?

REST Endpoint "/events" not documented

In the documentation [1] the REST endpoint of "/events", which outputs the same as "bosh events" is not documented. Is this by intentation or simply missing ?

Switching from local to s3 release blobstore

Had a question from a release developer—they followed the create-release doc which suggests they use a local blobstore, but then were getting ready to share their release outside their workstation. Suggested S3 and following s3-create-release, but there's no docs guiding how to switch blobstore. I think it's not just bosh upload blobs since blobs/* is full of symlinks already.

"Initializing BOSH environment on AWS" has incorrect information about private key location

The sample manifest includes private_key: ./bosh.pem # Path relative to this manifest file. However, if we put the path as relative to the manifest and run bosh-init from a different directory, it fails. When we cd into the correct directory and do not modify our manifest, it works.

I would expect bosh-init deploy to work regardless of where my $PWD is, or for the comment in the manifest to specify that the $PWD is important.

The relevant part of my manifest is:

  ssh_tunnel:
    host: 52.0.17.215 # <--- Replace with your Elastic IP address
    port: 22
    user: vcap
    private_key: keypair/bosh2.pem # Path relative to this manifest file

The terminal output showing the error, fix, and correct behavior is:

in ~/workspace/my-project
→ bosh-init deploy my-environment/deployments/bosh/bosh.yml
Deployment manifest: '/Users/my-user/workspace/my-project/my-environment/deployments/bosh/bosh.yml'
Deployment state: '/Users/my-user/workspace/my-project-/my-environment/deployments/bosh/bosh-state.json'

[output trimmed]

Started deploying
  Deleting VM 'i-44b538ad'... Skipped [VM not found] (00:00:08)
  Creating VM for instance 'bosh/0' from stemcell 'ami-5728e73c light'... Finished (00:00:50)
  Waiting for the agent on VM 'i-9054643c' to be ready... Failed (00:00:00)
Failed deploying (00:01:06)

Stopping registry... Finished (00:00:00)
Cleaning up rendered CPI jobs... Finished (00:00:00)

Command 'deploy' failed:
  Deploying:
    Creating instance 'bosh/0':
      Waiting until instance is ready:
        Starting SSH tunnel:
          Reading private key file '/Users/my-user/workspace/my-project/keypair/bosh2.pem':
            open /Users/my-user/workspace/my-project/keypair/bosh2.pem: no such file or directory

in ~/workspace/my-project
± dw+gc |master ↑1 S:3 U:7 ?:1 ✗| → cd my-environment/

in ~/workspace/my-project/my-environment
± dw+gc |master ↑1 S:3 U:7 ?:1 ✗| → bosh-init deploy deployments/bosh/bosh.yml
Deployment manifest: '/Users/my-user/workspace/my-project/my-environment/deployments/bosh/bosh.yml'
Deployment state: '/Users/my-user/workspace/my-project/my-environment/deployments/bosh/bosh-state.json'

[output trimmed]

Started deploying
  Waiting for the agent on VM 'i-9054643c'... Failed (00:00:09)
  Deleting VM 'i-9054643c'... Finished (00:01:12)
  Creating VM for instance 'bosh/0' from stemcell 'ami-5728e73c light'... Finished (00:00:51)
  Waiting for the agent on VM 'i-d4417178' to be ready... Finished (00:01:43)

[output trimmed]

`properties` in `job` in V2 manifest is not required?

The doc says that it is required here:

* **properties** [Hash, required]: Specifies job properties. Properties allow BOSH to configure jobs to a specific environment. `properties` defined in a Job block are accessible only to that job. Only properties specified here will be provided to the job.

But this sample file, which I assume is a correct manifest has an example where 'properties' is not specified. So I gather that 'properties' isn't really required:

...
  jobs:
  - name: consul_agent
    release: consul
    consumes:
      consul_common: {from: consul_common_link}
      consul_server: nil
      consul_client: {from: consul_client_link}
  - name: nats
...

Suggest to add router in OpenStack

Hi,

On the way to run a bosh-init on my OpenStack Icehouse platform, I've encountered this error:

Command 'deploy' failed: Deploying: Creating instance 'bosh/0': Creating VM: Creating vm with stemcell cid 'af76d776-4712-418b-986b-72e5f26017af': CPI 'create_vm' method responded with error: CmdError{"type":"Bosh::Clouds::VMCreationFailed","message":"OpenStack API Bad Request (Error. Unable to associate floating ip). Check task debug log for details.","ok_to_retry":true}

And in the neutron-server.log I see:

2016-04-22 18:29:52.262 27227 INFO neutron.api.v2.resource [req-7e26624a-a425-4db2-ab85-3afa4ec9b0eb None] update failed (client error): External network e87b37df-5d6a-4408-b71f-fa20beb8a206 is not reachable from subnet 4f9edede-85c5-4510-860c-622e06b09030. Therefore, cannot associate Port 01553ac5-a254-4c84-a2f3-d2764c39b543 with a Floating IP.

I've not seen in the documentation that we have to create a router between public and private network (I followed the tutorial like a nice boy). From the time I've created the router, all is OK. I suggest to add this step in the documentation.

Thank you!

Missing documentation: releases section of manifest supports URLs

I'm not sure anymore what variations are supported anymore in the various CLI versions. At one point, it used to be:

  • can specify latest, and it will just use what's on the director
  • can specify version, and it will use it if it's on the director
  • can specify remote tarball URL, along with version and SHA1
  • can specify local tarball file:/// URL, along with version (no need for SHA1)
  • can specify local release directory path, along with version create, and it will create the release and upload it for you.

I think at minimum all versions of the CLI support the remote URL specification, though not sure whether they treat version and SHA1 the same. Either way, would be nice to have all the supported fields in the releases block of the manifest documented.

/cc @tinygrasshopper

Microbosh examples should mention HM user

e.g. http://docs.cloudfoundry.org/bosh/deploy-microbosh-to-aws.html

The manifest on this page is missing a section to configure HM to talk to the director. A bosh user needs to be created manually for this to work; i.e. using bosh create user hm.

This needs to be configured correctly for the resurrector and agent metrics reporting to work correctly.

This process is similar to replacing the built in an admin account, which also doesn't appear to be described anywhere at this time.

Stemcell writeup has incorrect statement?

http://bosh.io/docs/stemcell.html

Is this correct?

"In addition to being generic, stemcells for one OS (e.g. all Ubuntu Trusty stemcells) are exactly the same for all infrastructures. This property of stemcells allows BOSH users to quickly and reliably switch between different infrastructures without worrying about the differences between OS images."

"Reusing base Operating System images across different IaaS"

Doesn't bosh.io have different downloads of a stemcell based on the IAAS ?

wrong title of the "director-configure-blobstore.html"

Hi,
Chapters "Configuring external blobstore" and "Configuring external database" have the same title (Connecting the Director to an External Postgres Database).
In fact, the following text should be not the "External Postgres Database", and "External Blobstore" is better.


---
title: Connecting the Director to an External Postgres Database

---

If you conform it, I will submit the PR for "https://github.com/cloudfoundry/docs-bosh/blob/master/director-configure-blobstore.html.md.erb".

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.