github.com/openshift/installer@v1.4.17/docs/user/openstack/deploy_baremetal_workers.md (about)

     1  # Deploying OpenShift bare-metal workers on OpenStack cloud provider
     2  
     3  
     4  ## Table of Contents
     5  - [Deploying OpenShift bare-metal workers on OpenStack cloud provider](#deploying-openshift-bare-metal-workers-on-openstack-cloud-provider)
     6    - [Table of Contents](#table-of-contents)
     7    - [Common prerequisites](#common-prerequisites)
     8    - [Considerations when deploying bare-metal workers](#considerations-when-deploying-bare-metal-workers)
     9    - [Deploying cluster with BM workers on tenant network deployed by the installer](#deploying-cluster-with-bm-workers-on-tenant-network-deployed-by-the-installer)
    10    - [Deploying cluster with BM workers on preexisting network](#deploying-cluster-with-bm-workers-on-preexisting-network)
    11    - [Deploying cluster with BM machines only on preexisting network](#deploying-cluster-with-bm-machines-only-on-preexisting-network)
    12    - [Deploying cluster with mixture of VM and BM workers](#deploying-cluster-with-mixture-of-vm-and-bm-workers)
    13    - [Known issues](#known-issues)
    14  
    15  
    16  ## Common prerequisites
    17  
    18  * [Ironic bare metal service][2] is enabled and accessible through the [OpenStack Compute API][3].
    19  * Bare-metal machines are available as an [OpenStack flavor][1].
    20  * At the time bare-metal machines are booted, the image used to boot them is available from the [Glance OpenStack image service][4].
    21  If given a URL, the installer will fetch that image from the location specified and upload it to Glance. See relevant
    22  [documentation][5].
    23  
    24  
    25  ## Considerations when deploying bare-metal workers
    26  
    27  * Long boot times for bare-metal machines may result in deployment timeout
    28  
    29      The first time a bare-metal server is booted the boot time could be significantly longer that
    30      the first time a VM server is booted. This longer boot time could exceed the timeout settings of
    31      the installer. If that occurs, the deployment will fail with a timeout error.  The deployment maybe
    32      restarted and completed by re-running  the installer with the appropriate *wait-for*
    33      command. For example:
    34  
    35          ./openshift-install wait-for install-complete --log-level debug
    36  
    37  
    38  ## Deploying cluster with BM workers on tenant network deployed by the installer
    39  
    40  The initial cluster is deployed using bare-metal workers only. Bare-metal workers and control plane VMs are all
    41  attached to the tenant network provisioned by the installer.
    42  
    43  - Requirements:
    44      - By default, OpenStack networks support attaching both VMs and bare-metal machines to them.
    45      * [Ironic bare metal service][2] can listen for, and PXE-boot machines in tenant networks
    46  
    47  - Create install-config.yaml:
    48  
    49      - Set `compute.[worker].platform.openstack.type` to the bare-metal server flavor.
    50      - Set `controlPlane.platform.openstack.type` to the VM flavor which will be used by the control plane nodes.
    51  
    52          For example:
    53  
    54                  controlPlane:
    55                     platform:
    56                       openstack:
    57                         type: <vmComputeFlavorForMasters>
    58  
    59                   ... other settings
    60  
    61                   compute:
    62                   - architecture: amd64
    63                     hyperthreading: Enabled
    64                     name: worker
    65                     platform:
    66                       openstack:
    67                         type: <baremetalComputeFlavor>
    68                     replicas: 3
    69  
    70                   ... other settings
    71  
    72  
    73  
    74  - Run the openshift installer:
    75  
    76        ./openshift-install create cluster --log-level debug
    77  
    78  - wait for the installer to complete.
    79  
    80      If the installer times out waiting for the bare-metal workers to complete booting,
    81      restart the installation using [the appropriate *wait-for* command](#considerations-when-deploying-bare-metal-workers).
    82  
    83  ## Deploying cluster with BM workers on preexisting network
    84  
    85  Initial cluster is deployed using bare-metal workers only. Bare-metal workers are attached to
    86  a preexisting network.
    87  
    88  - Requirements:
    89      - An OpenStack subnet has been pre-provisioned which supports attaching both VMs and bare-metal servers to it.
    90  
    91  - Create install-config.yaml:
    92  
    93      - Set `compute.[worker].platform.openstack.type` to the bare-metal server flavor.
    94  
    95      - Set `controlPlane.platform.openstack.type` to the VM flavor which will be used by the control plane nodes.
    96  
    97      - Set `platform.openstack.controlPlanePort.fixedIPs.subnet.id` to the UUID of the pre-provisioned subnet and/or `platform.openstack.controlPlanePort.fixedIPs.subnet.name` to the name of pre-provisioned subnet. 
    98  
    99          For example:
   100  
   101                  controlPlane:
   102                     platform:
   103                       openstack:
   104                         type: <vmComputeFlavorForMasters>
   105  
   106                   ... other settings
   107  
   108                   compute:
   109                   - architecture: amd64
   110                     hyperthreading: Enabled
   111                     name: worker
   112                     platform:
   113                       openstack:
   114                         type: <baremetalComputeFlavor>
   115                     replicas: 3
   116  
   117                   ... other settings
   118  
   119                   platform:
   120                     openstack:
   121                        controlPlanePort:
   122                          fixedIPs:
   123                            - subnet:
   124                                id: <uuidOfPreprovisionedSubnet>
   125  
   126  - Run the openshift installer:
   127  
   128          ./openshift-install create cluster --log-level debug
   129  
   130  - wait for the installer to complete.
   131  
   132      If the installer times out waiting for the bare-metal workers to complete booting,
   133      restart the installation using [the appropriate *wait-for* command](#considerations-when-deploying-bare-metal-workers).
   134  
   135  ## Deploying cluster with BM machines only on preexisting network
   136  
   137  Initial cluster is deployed using bare-metal machines only for both Control
   138  Plane and Compute nodes. The cluster is deployed to a preexisting network.
   139  
   140  - Requirements:
   141      - An OpenStack subnet has been pre-provisioned which supports attaching bare-metal servers to it.
   142  
   143  - Create install-config.yaml:
   144  
   145      - Set `compute.[worker].platform.openstack.type` to a bare-metal server flavor.
   146  
   147      - Set `controlPlane.platform.openstack.type` to a bare-metal server flavor.
   148  
   149      - Set `platform.openstack.controlPlanePort.fixedIPs.subnet.id` to the UUID of the pre-provisioned subnet and/or `platform.openstack.controlPlanePort.fixedIPs.subnet.name` to the name of pre-provisioned subnet.
   150  
   151          For example:
   152  
   153                  controlPlane:
   154                     platform:
   155                       openstack:
   156                         type: <bmComputeFlavorForMasters>
   157  
   158                   ... other settings
   159  
   160                   compute:
   161                   - architecture: amd64
   162                     hyperthreading: Enabled
   163                     name: worker
   164                     platform:
   165                       openstack:
   166                         type: <bmComputeFlavorForWorkers>
   167                     replicas: 3
   168  
   169                   ... other settings
   170  
   171                   platform:
   172                     openstack:
   173                        controlPlanePort:
   174                          fixedIPs:
   175                            - subnet:
   176                                id: <uuidOfPreprovisionedSubnet>
   177  
   178  - Run the openshift installer:
   179  
   180          ./openshift-install create cluster --log-level debug
   181  
   182  - wait for the installer to complete.
   183  
   184      If the installer times out waiting for the bare-metal workers to complete booting,
   185      restart the installation using [the appropriate *wait-for* command](#considerations-when-deploying-bare-metal-workers).
   186  
   187  ## Deploying cluster with mixture of VM and BM workers
   188  Cluster is initially deployed with VM workers. BM workers are added to the cluster post initial deployment.
   189  
   190  - Requirements:
   191      - By default, OpenStack networks support attaching both VMs and bare-metal machines to them.
   192      * [Ironic bare metal service][2] can listen for, and PXE-boot machines in tenant networks
   193  
   194  - Create install-config.yaml:
   195  
   196      - Set `compute.[worker].platform.openstack.type` to the VM flavor which will be used for VM workers.
   197  
   198      - Set `controlPlane.platform.openstack.type` to the VM flavor which will be used by the control plane nodes.
   199  
   200          For example:
   201  
   202                  controlPlane:
   203                     platform:
   204                       openstack:
   205                         type: <vmComputeFlavorForMasters>
   206  
   207                   ... other settings
   208  
   209                   compute:
   210                   - architecture: amd64
   211                     hyperthreading: Enabled
   212                     name: worker
   213                     platform:
   214                       openstack:
   215                         type: <vmComputeFlavorForWorkers>
   216                     replicas: 3
   217  
   218  - Run the openshift installer:
   219  
   220          ./openshift-install create cluster --log-level debug
   221          
   222  - Once the cluster is deployed and running, [create and deploy a new infrastructure MachineSet][6] using the bare-metal server flavor.
   223  
   224  [1]: <https://docs.openstack.org/nova/latest/user/flavors.html> "In OpenStack, flavors define the compute, memory, and storage capacity of nova computing instances"
   225  [2]: <https://docs.openstack.org/ironic/latest/>
   226  [3]: <https://docs.openstack.org/api-ref/compute/>
   227  [4]: <https://docs.openstack.org/glance/latest/>
   228  [5]: <https://github.com/openshift/installer/blob/master/docs/user/openstack/customization.md#image-overrides>
   229  [6]: https://docs.okd.io/latest/machine_management/creating-infrastructure-machinesets.html#machineset-yaml-osp_creating-infrastructure-machinesets