Setting up and sharing a data store


This topic describes how to set up the data store for Microsoft Windows and Linux provisioning environments. The topic contains the following sections:

Data store overview

To provision operating systems on bare metal computers using the Preboot Execution Environment (PXE), you create a data store directory on a Windows or Linux server. Then you share the data store directory. 

You can set up multiple data stores. If you are provisioning many devices simultaneously, using multiple data stores can potentially reduce network traffic. During the provisioning process, most network traffic occurs between the device being provisioned and the data store. Using multiple data stores can reduce the possibility of a bottleneck. Additionally, if you are provisioning devices on different network segments, you can place a data store on each segment, thereby substantially reducing network traffic.

To set up a data store for Windows provisioning

To set up the data store for Microsoft Windows provisioning environments, complete the following steps:

  1. On the host computer that will function as a data store server, create a data store directory. There are no requirements for the location of this directory or its name. The only requirement is that you reference the names correctly when you configure the System Package Types in the Console.
  2. Make sure that the roles for users who run provisioning jobs have write access to the data store location (to write in the unattend and kickstart files). Those roles must have ACLs on the server object that is the host for the data store. 
  3. Copy the bmiwin.exe file, bllibeay32.dll and blssleay32.dll files to the datastore\bmi directory. These files are provided in the <version>-provision-files.zip file (which you obtained from within the main product package that you downloaded from the EPD site). If you extract the entire contents of <version>-provision-files.zip, the bmiwin.exe file appears in the \provisioning\pxe directory. The bllibeay32.dll and blssleay32.dll files appear in the \provisioning\winpe\x86 directory.
  4. Share the data store using one of following methods. If the data store server is a:
    • Windows host computer — Use Windows to set up sharing with the data store directory. The share should allow read-only access. 

      Click here for details.
      1. In Server Manager, navigate to Local Users and Groups > Users. Right-click Users. Select New User.
      2. Complete the dialog as follows:
        1. User Name: pxeuser.
        2. Password: Bl@d3l0g1c (or a password of your choice).
        3. Uncheck User must change password at next logon.
        4. Select Password never expires.
        5. Click Create and then click Close.
      3. In Windows Explorer, navigate to the data store directory. Right-click and select Sharing and Security.
      4. On the Sharing tab:
        1. Select Share this folder.
        2. Click Permissions.
        3. On the Permissions panel, configure the pxeuser user to allow Read access. Then click OK.
      5. On the Properties panel, click OK
    • Linux host computer — Use Samba to set up sharing with the data store directory structure. The share should allow read-only access.

      Warning

      BMC recommends that any account used to share access to the data store be limited to read-only access. This prevents alterations to the OS installation files via the share.

      Click here for details.
      1. Create the data store directory. For example, this procedure uses the following data store directory path name: /opt/bladelogic/pxestore
      2. Install Samba on the data store server. 

        Use the package manager (yum install samba) or install the necessary RPMs and their dependencies directly.
        To verify that Samba is installed, use the following command: smbd -V
        The command returns a version number if Samba is installed.
      3. Configure the Samba service to start on boot up:
        chkconfig smb on

      4. Create a Samba share user to map to the data store. Use the following commands:
        useradd blprov
        smbpasswd -a blprov
        Then specify the SMB password for this user.
      5. In the TrueSight Server Automation Console, map this user and password to the data store property instance that you are going to use to provision your Windows systems.
      6. Open the smb.conf file. Locations vary depending on your Samba distribution. For Red Hat Linux distributions, the file is in /etc/samba.
      7. Add lines to the file to define the path to the data store directory and define users and access. The following example shows a minimal smb.conf file containing the lines required to enable a data store share.

        # Creates a publicly accessible directory with read only access.
        #The last line provides write access to people in the "staff" group
        [pxestore]
        comment = PXE
        #The path is the example we created above.
        path = /opt/bladelogic/pxestore
        public = yes
        writable = no
        #The valid user is the example we created above.
        valid users = blprov
        # printable = no
        # write list = +staff
      8. Save the smb.conf file.
      9. If the Red Hat Linux server has a host-based firewall, configure the firewall to allow the following port and protocol combinations for Samba:

        The macro csv from Confluence is no longer available.

      10. Start Samba, using the following commands:
        service smb start

      11. Map the Linux data store directory as a network drive on a Windows server. For example, map //Server1/pxestore, using the blprov user for credentials.

       

      For more information about configuring Samba, see http://samba.netfirms.com/index.htm or http://www.samba.org/samba/docs/.

      If you are using WinPE, you need a password to access the data store share. Passwords are not necessary if using Gentoo. If you are using WinPE, the computer being provisioned must map a drive to the location of the installation files on the data store server. You must enable this account. You can use properties in TrueSight Server Automation to provide the connection information needed to access other data stores. 

  5. Configure the data store location, path name, and access credentials as properties in the Configuration Property Dictionary, as described in . You can create Linux and Windows instances of the data store property.
  6. If the data store server is a Windows host computer, configure the security settings as follows:
    1. In the Windows Control Panel, open Administrative Tools. Double-click Local Security Policy. Under Security Settings, click Local Policies and double-click Security Options.
    2. Set the policies as shown in the following table:

  7. Install an RSCD agent on the data store server by using one of the following tasks:

To set up a data store for Linux provisioning

to set up the data store for Linux provisioning environments, complete the following steps:

  1. On the host computer that will function as a data store server, create a data store directory. There are no requirements for the location of this directory or its name. The only requirement is that you reference the names correctly when you configure the System Package Types in the Console.
  2. Make sure that the roles for users who run provisioning jobs have write access to the data store location (to write in the unattend and kickstart files). Those roles must have ACLs on the server object that is the host for the data store.
  1. Perform the following steps to provide HTTP access to the data store (such as Apache on Linux or IIS on Windows) as the Linux installers run over HTTP.
    1. Set up HTTP access to the data store directory structure. If the data store server is a:
      • Windows computer — Use IIS to define a virtual directory that corresponds to the data store directory structure. Use web sharing to grant read-only access to this virtual directory. 

        Click here for details

        In addition, if you have set up the data store on a Windows host computer where IIS and .Net Framework are installed, you must remove the file associations of .cs files in IIS by performing the following steps:

        1. From the Start menu, choose Programs > Administrator Tools > IIS Manager.
        2. In IIS Manager, choose Default Web Sites > datastore
        3. Right-click and choose Properties.
          The Datastore Properties window opens.
        4. On the Virtual Directory tab, click Configurations.
          The Application Configuration window opens.
        5. Remove the application mappings for the .cs files.
        6. Restart the IIS service.
      • Linux host computer — Set up HTTP read-only access to the data store directory structure. (To facilitate troubleshooting, you can optionally set up HTTP access to allow directory browsing. However, this makes your data store configuration less secure.)

        Click here for details.
        1. Create the data store directory. For example, this procedure uses the following data store directory path name: /opt/bladelogic/pxestore
        2. Install httpd on the data store server. 

          Use the package manager (yum install httpd) or install the necessary RPMs and their dependencies directly.
          To verify that httpd is installed run: rpm -q httpd
          The command returns the rpm name and version for httpd
        3. Configure the httpd service to start on boot up:
          chkconfig httpd on
        4. For Apache servers, configure the symbolic link to the data store:
          1. Enter the following command:
            ln -s <data_store_path> /var/www/html/data_store_name
            For example,
            ln -s /opt/bladelogic/pxestore /var/www/html/pxestore
        5. In the /etc/httpd/conf/httpd.conf file, ensure that the section <Directory "/var/www/html">
          includes the following line:
          Options Indexes FollowSymLinks
        6. If the Red Hat Linux server has a host-based firewall, configure the firewall to allow the following port and protocol combinations for httpd:

          The macro csv from Confluence is no longer available.

        7. Start or restart Samba and httpd, using the following commands:
          service httpd start
        8. Using a web browse access http://server/pxestore and you should see the root of the /opt/bmc/bladelogic/NSH/pxestore directory.
    2. Copy the bmilinux.tar file to the datastore directory and copy the bmiwin.exe file, bllibeay32.dll and blssleay32.dll files to the datastore\bmi directory. These files are provided in the <version>-provision-files.zip file (which you obtained from within the main product package that you downloaded from the EPD site). If you extract the entire contents of <version>-provision-files.zip, the bmilinux.tar and bmiwin.exe files appear in the \provisioning\pxe directory. The bllibeay32.dll and blssleay32.dll files appear in the \provisioning\winpe\x86 directory (Windows only).
  2. Configure the data store location, path name, and access credentials as properties in the Configuration Property Dictionary, as described in To configure data store property instances. You can create Linux and Windows instances of the data store property.
  3. Install an RSCD agent on the data store server by using one of the following tasks:

To configure data store property instances

You must configure the data store location, path name, and access credentials as properties in the Configuration Property Dictionary. You can create Linux and Windows instances of the data store property.

  1. In the console, select Window > Show View > Property Dictionary.
  2. In the Property Dictionary tab, navigate to the Built-in Property Classes > DataStore > Pxe DataStore entry.
  3. Click the Instances tab.
  4. Create the instance as follows:
    (Linux)

    1. Click Add worddave9940822137e17b447ef87be49e50b22.png .
    2. For Name, use Linux.
    3. For FULL_PATH, use the full path to the data store directory. For example: /home/BMC Software/BladeLogic/pxestore
    4. For LOCATION, use the host name or IP address of the data store host computer.
    5. For VIRTUAL_DIR, use the name of the virtual directory you created for web sharing. For example, pxestore.
    6. For USERNAME, use pxeuser.
    7. For PASSWORD, use Bl@d3l0g1c, or the password you used to configure the HTTP share.

      Note

      USERNAME and PASSWORD are required only if you specified a user when you configured web sharing.

    8. Click Finish.

    (Windows)

    1. Click Add worddave9940822137e17b447ef87be49e50b22.png .
    2. For Name, use Windows.
    3. For FULL_PATH, use the full path to the pxestore. For example: C:\Program Files\BMC Software\BladeLogic\PXE\pxestore.
    4. For LOCATION, use the host name or IP address of the data store host computer.
    5. For VIRTUAL_DIR, use the data store folder name. For example, pxestore.
    6. For USERNAME, use the name of the Authorize User on the PXE server. This is typically a local user account. For example, pxeuser.
    7. For PASSWORD, use the Authorize User's password.
    8. Click Finish.

DataStore Instances Example

worddav2b7c8e12b3bb3889cfe55b7b0051e3fe.png 

worddavbf2bc66a1433b7ff051beed986979bcb.png

Where to go from here

Configure the data store with required values for accessing the data sources for provisioning.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*