PingDirectory

About the manage-profile tool

The manage-profile tool is provided with the server to work with server profiles. It includes subcommands for creating, applying, and replacing server profiles, all of which significantly reduce the effort required by an administrator to configure a server appropriately.

The following sections describe these subcommands in more detail. For more information about the manage-profile tool, run manage-profile --help. For more information about each individual subcommand and its options, run manage-profile <subcommand> --help.

manage-profile generate-profile

To create a server profile from a configured server, use the generate-profile subcommand. The generated profile contains the following information, which provides a base for completing a profile:

  • Command-line arguments that were used to set up the server

  • dsconfig commands necessary to configure the server

  • Installed server SDK extensions

  • Files that are added to the server root

To produce a complete profile, some parts of the generated profile might require modifications, such as adding password files that setup-arguments.txt uses. The --instanceName and --localHostName arguments in setup-arguments.txt are made variables by generate-profile, and must be provided values when other manage-profile subcommands use the generated profile.

The --excludeSetupArguments option generates a server profile without a setup-arguments.txt file. This is useful when generating server profiles for use with Docker images.

manage-profile setup

To apply a server profile to a fresh, unconfigured server, use the setup subcommand, which replaces the normal setup tool when using a server profile. Run manage-profile setup to complete the following tasks:

  • Copies the pre-setup files to the server root

  • Runs the setup tool

  • Copies the post-setup files to the server root

  • Installs any server SDK extensions

  • Runs any dsconfig batch files

  • Imports any LDIF files

  • Starts the server

While manage-profile setup is running, a copy of the profile is created in a temporary directory that can be specified by using the --tempProfileDirectory argument. The command leaves the server in a complete and running state when finished, unless the --doNotStart argument is specified.

manage-profile replace-profile

Run the replace-profile subcommand on a server that was originally set up with a server profile to replace its configuration with a new profile. The tool applies a specified server profile to an existing server while preserving its data, topology configuration, and replication configuration.

While manage-profile replace-profile is running, the existing server is stopped and moved to a temporary directory that the --tempServerDirectory argument can specify. A fresh, new server is subsequently installed and set up with the new profile. The final server is left running if it was running before the command was started, and remains stopped if it was stopped.

Run manage-profile replace-profile from a second unzipped server install package on the same host as the existing server, similar to the update tool. Use the --serverRoot argument to specify the root of the existing server that will have its profile replaced.

If files have been added or modified in the server root since the most recent manage-profile setup or manage-profile replace-profile was run, they are included in the final server with the replaced profile. Otherwise, files specifically added from the server-root directory of the previous server profile are absent from the final server with the replaced profile. If errors occur during the subcommand, such as the new profile having an invalid setup-arguments.txt file, the existing server returns to its original state from before manage-profile replace-profile was run.

The --skipValidation option which skips the validation step when running on an offline server

When you run the manage-profile replace-profile tool with an SDK extension included in the new profile, the tool invokes the setup command.

The manage-profile replace-profile tool can update the server version when needed. It can also directly apply configuration changes when there are no other changes in the new profile. This is a shorter process when making small changes to dsconfig.