New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

allow nova driver to be boot from volume #29765

Merged
merged 3 commits into from Dec 17, 2015

Conversation

Projects
None yet
3 participants
@gtmanfred
Member

gtmanfred commented Dec 16, 2015

Thanks,
Daniel

gtmanfred added some commits Dec 16, 2015

Add boot from volume for openstack nova
This will allow for mapping block storage devices to servers on boot, by either
using prebuilt cinder volumes, making new ones

    centos7-2-iad-cloudqe4:
      provider: cloudqe4-iad
      size: general1-2
      block_device:
        - source: image
          id: 6595f1b7-e825-4bd2-addc-c7b1c803a37f
          dest: volume
          size: 100
          shutdown: preserve
          bootindex: 0

block_device and ephemeral need to be lists of dictionaries.
the others are strings
@gtmanfred

This comment has been minimized.

Show comment
Hide comment
@gtmanfred
Member

gtmanfred commented Dec 16, 2015

cachedout added a commit that referenced this pull request Dec 17, 2015

Merge pull request #29765 from gtmanfred/2015.8
allow nova driver to be boot from volume

@cachedout cachedout merged commit 1b430b2 into saltstack:2015.8 Dec 17, 2015

2 of 5 checks passed

default Merged build finished.
Details
jenkins/salt-pr-linode-ubuntu14.04-n Salt PR - Linode Ubuntu 14.04 #3165 — FAILURE
Details
jenkins/salt-pr-rs-cent7-n Salt PR - RS CentOS 7 #10673 — FAILURE
Details
jenkins/salt-pr-clone Salt PR - Clone Repository #12101 — SUCCESS
Details
jenkins/salt-pr-lint-n Salt PR - Code Lint #11803 — SUCCESS
Details
@cachedout

This comment has been minimized.

Show comment
Hide comment
@cachedout

cachedout Dec 17, 2015

Contributor

Nice! Thanks, @gtmanfred

Contributor

cachedout commented Dec 17, 2015

Nice! Thanks, @gtmanfred

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Jan 28, 2016

If i'm building out a new server from scratch, just to get an idea, is this correct?

my-profile:
provider: rackspace
size: memory1-4
block_device:
- source: image
id: ?????(is this a set image id for each OS that we can install)
dest: volume
size: 50
shutdown: preserve
bootindex: 0

tehsu commented on ec7e45f Jan 28, 2016

If i'm building out a new server from scratch, just to get an idea, is this correct?

my-profile:
provider: rackspace
size: memory1-4
block_device:
- source: image
id: ?????(is this a set image id for each OS that we can install)
dest: volume
size: 50
shutdown: preserve
bootindex: 0

This comment has been minimized.

Show comment
Hide comment
@gtmanfred

gtmanfred Jan 28, 2016

Owner
Owner

gtmanfred replied Jan 28, 2016

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Jan 28, 2016

Can I also define a rackconnect IP from my block?

tehsu replied Jan 28, 2016

Can I also define a rackconnect IP from my block?

This comment has been minimized.

Show comment
Hide comment
@gtmanfred

gtmanfred Jan 28, 2016

Owner
Owner

gtmanfred replied Jan 28, 2016

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Jan 28, 2016

Great, I am on RCv2 so currently I use metadata to assign IP, but deploying a memory server doesn't work since we use libcloud and we cant deploy with block storage, waiting to switch over to nova to do so, just needed some guidance, thank you.

tehsu replied Jan 28, 2016

Great, I am on RCv2 so currently I use metadata to assign IP, but deploying a memory server doesn't work since we use libcloud and we cant deploy with block storage, waiting to switch over to nova to do so, just needed some guidance, thank you.

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Jan 28, 2016

So do you recommend switching to nova for now to deploy, and just switching my profiles as I go?

tehsu replied Jan 28, 2016

So do you recommend switching to nova for now to deploy, and just switching my profiles as I go?

This comment has been minimized.

Show comment
Hide comment
@gtmanfred

gtmanfred Jan 28, 2016

Owner
Owner

gtmanfred replied Jan 28, 2016

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Jan 28, 2016

ok, thank you!

tehsu replied Jan 28, 2016

ok, thank you!

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 2, 2016

Just making sure this looks correct,

centos6-memory60-dfw:
      provider: rackspace
      size: memory1-60
      meta: {"RackConnectPublicIP": "??.??.??.??"}
      block_device:
        - source: image
          id: fabe045f-43f8-4991-9e6c-5cabd617538c
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0
      networks:
        - fixed:
          - 00000000-0000-0000-0000-000000000000
          - 11111111-1111-1111-1111-111111111111

tehsu replied Feb 2, 2016

Just making sure this looks correct,

centos6-memory60-dfw:
      provider: rackspace
      size: memory1-60
      meta: {"RackConnectPublicIP": "??.??.??.??"}
      block_device:
        - source: image
          id: fabe045f-43f8-4991-9e6c-5cabd617538c
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0
      networks:
        - fixed:
          - 00000000-0000-0000-0000-000000000000
          - 11111111-1111-1111-1111-111111111111

This comment has been minimized.

Show comment
Hide comment
@gtmanfred

gtmanfred Feb 2, 2016

Owner

you shouldn't need the networks section, those are the defaults for a cloud server.

and you can make the rackconnect public ip thing in the yaml dictionary

centos6-memory60-dfw:
      provider: rackspace
      size: memory1-60
      meta:
        RackConnectPublicIP: "??.??.??.??"
      block_device:
        - source: image
          id: fabe045f-43f8-4991-9e6c-5cabd617538c
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0

And that should work i think.

Owner

gtmanfred replied Feb 2, 2016

you shouldn't need the networks section, those are the defaults for a cloud server.

and you can make the rackconnect public ip thing in the yaml dictionary

centos6-memory60-dfw:
      provider: rackspace
      size: memory1-60
      meta:
        RackConnectPublicIP: "??.??.??.??"
      block_device:
        - source: image
          id: fabe045f-43f8-4991-9e6c-5cabd617538c
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0

And that should work i think.

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 2, 2016

Seeing this error when I try to deploy,

[ERROR ] The required 'image' configuration setting is missing from the 'profile_test' profile, which is configured under the 'rackspace' alias.

the driver should be nova correct?

tehsu commented Feb 2, 2016

Seeing this error when I try to deploy,

[ERROR ] The required 'image' configuration setting is missing from the 'profile_test' profile, which is configured under the 'rackspace' alias.

the driver should be nova correct?

@gtmanfred

This comment has been minimized.

Show comment
Hide comment
@gtmanfred

gtmanfred Feb 2, 2016

Member

That looks like you are not on 2015.8.4

(which granted has a bug in it right now, but was just announced)

#30820

+--------------------------------------+----------------------------------------------------------+
| Property                             | Value                                                    |
+--------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig                    | MANUAL                                                   |
| OS-EXT-STS:power_state               | 0                                                        |
| OS-EXT-STS:task_state                | block_device_mapping                                     |
| OS-EXT-STS:vm_state                  | building                                                 |
| RAX-PUBLIC-IP-ZONE-ID:publicIPZoneId | 669bb7b5bd0c29d4d8617968275eb1d24bc6748537d40af594f1d799 |
| accessIPv4                           |                                                          |
| accessIPv6                           |                                                          |
| config_drive                         |                                                          |
| created                              | 2016-02-02T21:06:08Z                                     |
| flavor                               | 8 GB General Purpose v1 (general1-8)                     |
| hostId                               | 7963ea7616e67ee1b43749e919cbab5b8d3fee2ac45197cf2ba9332b |
| id                                   | 0f684e3d-07e0-4f21-afb3-d7109ccc6afc                     |
| image                                | Attempt to boot from volume - no image supplied          |
| key_name                             | gtmanfred                                                |
| metadata                             | {}                                                       |
| name                                 | testbfv.manfred.io                                       |
| neutron network                      | 172.16.1.36                                              |
| openstack network                    | 172.16.0.5                                               |
| progress                             | 0                                                        |
| public network                       | 2001:4802:7805:102:be76:4eff:fe20:6c00, 104.130.239.70   |
| status                               | BUILD                                                    |
| tenant_id                            | <redacted>                                                   |
| updated                              | 2016-02-02T21:06:10Z                                     |
| user_id                              | <redacted>                                                 |
+--------------------------------------+----------------------------------------------------------+
cent7-bfv-iad:
      provider: iad
      size: general1-8
      block_device:
        - source: image
          id: 9d29f10e-4fc2-4556-8d25-532d1784329a
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0
Member

gtmanfred commented Feb 2, 2016

That looks like you are not on 2015.8.4

(which granted has a bug in it right now, but was just announced)

#30820

+--------------------------------------+----------------------------------------------------------+
| Property                             | Value                                                    |
+--------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig                    | MANUAL                                                   |
| OS-EXT-STS:power_state               | 0                                                        |
| OS-EXT-STS:task_state                | block_device_mapping                                     |
| OS-EXT-STS:vm_state                  | building                                                 |
| RAX-PUBLIC-IP-ZONE-ID:publicIPZoneId | 669bb7b5bd0c29d4d8617968275eb1d24bc6748537d40af594f1d799 |
| accessIPv4                           |                                                          |
| accessIPv6                           |                                                          |
| config_drive                         |                                                          |
| created                              | 2016-02-02T21:06:08Z                                     |
| flavor                               | 8 GB General Purpose v1 (general1-8)                     |
| hostId                               | 7963ea7616e67ee1b43749e919cbab5b8d3fee2ac45197cf2ba9332b |
| id                                   | 0f684e3d-07e0-4f21-afb3-d7109ccc6afc                     |
| image                                | Attempt to boot from volume - no image supplied          |
| key_name                             | gtmanfred                                                |
| metadata                             | {}                                                       |
| name                                 | testbfv.manfred.io                                       |
| neutron network                      | 172.16.1.36                                              |
| openstack network                    | 172.16.0.5                                               |
| progress                             | 0                                                        |
| public network                       | 2001:4802:7805:102:be76:4eff:fe20:6c00, 104.130.239.70   |
| status                               | BUILD                                                    |
| tenant_id                            | <redacted>                                                   |
| updated                              | 2016-02-02T21:06:10Z                                     |
| user_id                              | <redacted>                                                 |
+--------------------------------------+----------------------------------------------------------+
cent7-bfv-iad:
      provider: iad
      size: general1-8
      block_device:
        - source: image
          id: 9d29f10e-4fc2-4556-8d25-532d1784329a
          dest: volume
          size: 50
          shutdown: preserve
          bootindex: 0
@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 2, 2016

I'm actually on enterprise.

Salt Version:
Salt: 4.1.3

tehsu commented Feb 2, 2016

I'm actually on enterprise.

Salt Version:
Salt: 4.1.3

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 2, 2016

Which driver do you use? I'm assuming nova? Or does it stay openstack

tehsu commented Feb 2, 2016

Which driver do you use? I'm assuming nova? Or does it stay openstack

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 3, 2016

Got it working, thanks for your help.

tehsu commented Feb 3, 2016

Got it working, thanks for your help.

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 6, 2016

Have you tried using the following? I'm running it on a fresh salt build with 2015.8.5

cent6:
provider: rackspace
size: general1-1
block_volume: 2ceba925-daf9-4f2c-aa20-686e04ca2e2d

I'm getting [ERROR ] The required 'image' configuration setting is missing from the 'cent6' profile, which is configured under the 'rackspace' alias.

I built it using salt-cloud

tehsu commented Feb 6, 2016

Have you tried using the following? I'm running it on a fresh salt build with 2015.8.5

cent6:
provider: rackspace
size: general1-1
block_volume: 2ceba925-daf9-4f2c-aa20-686e04ca2e2d

I'm getting [ERROR ] The required 'image' configuration setting is missing from the 'cent6' profile, which is configured under the 'rackspace' alias.

I built it using salt-cloud

@tehsu

This comment has been minimized.

Show comment
Hide comment
@tehsu

tehsu Feb 16, 2016

ok so, spoke to you on IRC, for anyone looking at this, the correct way to do

cent6:
  provider: rackspace
  size: general1-1
  boot_volume: 2ceba925-daf9-4f2c-aa20-686e04ca2e2d

tehsu commented Feb 16, 2016

ok so, spoke to you on IRC, for anyone looking at this, the correct way to do

cent6:
  provider: rackspace
  size: general1-1
  boot_volume: 2ceba925-daf9-4f2c-aa20-686e04ca2e2d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment