When configuring the Operations (Ops) Manager Director, you might have entered the information for an S3 bucket to be used for the Ops Manager storage instead of internal storage, then you may have pressed the "Save" button to save the settings in the configuration. However, you may have since changed that decision or your settings didn't validate and you may not want that information saved in the Operations Manager configuration. You will have to manually edit the Director's installation.yml to remove it.
Once you enter valid S3 Bucket information into the Operations Manager configuration, it will add it to the file but it will not remove this. For now, to remove it, you have to do so manually. Once the storage is set for the Operations Manager and it is deployed, it will not allow changes to it. Doing so once you deploy Operations Manager can result in your environment entering a failing state.
1. After configuring an S3 compatible Blobstore in the Operations Manager Director Configs and clicking "save", it has saved those settings into the installation.yml file.
2. Connect via SSH on your Operations Manager Virtual Machine (VM), and run the following command to decrypt the installation.yml file:
sudo -u tempest-web SECRET_KEY_BASE="s" RAILS_ENV=production /home/tempest-web/tempest/web/scripts/decrypt /var/tempest/workspaces/default/installation.yml /tmp/installation.yml
When prompted, enter the Decryption Passphrase.
Note: When running decrypt from Ops Manager directory /home/ubuntu you may encounter the error: Permission denied @ dir_chdir - /home/ubuntu. To remedy this, navigate out of /home/ubuntu.
As you can see, this puts a decrypted installation.yml file on the director at /tmp/installation.yml.
3. Make a back-up of the installation.yml file before continuing to the next step or making any changes.
4. Make the following changes to the /tmp/installation.yml file:
blobstore_type: internal
s3_blobstore_options: endpoint: <redacted> bucket_name: <redacted> access_key: <redacted> secret_key: <redacted> signature_version: '2'
5. Now that the installation settings have the S3 bucket information removed, we need to encrypt the installation.yml file again. Do so by running the following:
sudo -u tempest-web SECRET_KEY_BASE="s" RAILS_ENV=production /home/tempest-web/tempest/web/scripts/encrypt /tmp/installation.yml /var/tempest/workspaces/default/installation.yml
When prompted, enter the Decryption Passphrase.
6. Now, you should be able to go to your Ops Manager director config settings and see the S3 Blobstore settings removed and internal should be checked.
Since changing the installation.yml file is a risky operation, we highly recommend you do not attempt to change or delete any settings in the installation.yml file besides what is shown above. Doing so can result in an invalid file and can break Ops Manager to a point where a fresh install is necessary.
We also recommend that you backup the installation.yml file before making any changes.
When attempting to decrypt the installation.yml file, you receive an error indicating:
Failed to decrypt /var/tempest/workspaces/default/installation.yml: #<:undefinedconversionerror: from ascii-8bit to utf-8>
This is likely to be caused by a value of `{ "usd": "$", "eur": "€" }` being located in the Settings tab at the Elastic Runtime tile by going to the Apps Manager page and then by going to supported currencies as json field.
The fix for this is to eliminate that special character (€) from the field's value. In one reported case, it was replaced it with "$$" and then they clicked "Save", but they did not "Apply Changes". After creating the decrypted installation.yml file in /tmp, revert the changes by adding back the special character (€). Then proceed with remaining steps in the article.