Updated: 09 April 2022

How to upgrade an Enterprise Managed Cloud service - c06429685

Pre- reqs :

  • Are there any custom drivers in use?
    Make sure you have a copy of the installer
  • Download copy of License from Production Parent PONCONF
  • Update the license file with new Internal Service URL and new PONCONF Parent URL
    This should reflect [client][instance ].[ networkstack ].printanywhere.com
    eg. https://amatc.ohio-1.printanywhere.com/cps
  • Ensure your license file contains the License UUID
  • Upload license to customer's S3 bucket

Update Step 1 Script

  1. Select ‘CloudFormation’ from the ‘Management Tools’ area
  2. Locate the Client name from the list
  3. Select the Client name and choose 'Update Stack' from the 'Actions' menu
  4. Select ‘Specify an Amazon S3 template URL’ and enter the current Step-1-Managed-Client.json URL
  5. Select Next, then review fields
    1. EMAILREGION should reflect the best fit for the Region the servers are in. us-east-2 for Ohio, us-west-2 for Oregon and eu-west-1 for Ireland
    2. NETWORKSTACKNAME should not change
    3. PUBLICDOMAIN remains printanywhere.com
    4. SNSEmail remains as is
  6. Select Next
  7. Review Options - no changes should be needed
  8. Select Next to Review
  9. Acknowledge the agreement, then select ‘next’, this process will take about 10 minutes to complete

Create new Servers with newer version of PSIM

  1. Select ‘CloudFormation’ from the ‘Management Tools’ area
  2. Select ‘Create a New Stack’
  3. Select ‘Specify an Amazon S3 template URL’
    • If the customer has a basic setup, meaning they are just going to have 2 PAS and 2 PDH’s then run this script: Step-2-Managed-Opsworks-Base.json
    • If the customer is enabling an advanced setup, meaning they are going to have more than 2 PAS/PDH then run this script: Step-2-Managed-Opsworks-Advanced.json
  4. Select Next, then populate the fields similar to below:
  5. Stack Name: [CLIENT][INSTANCE] (The instance reflects the iteration) eg. AMATC for the third iteration of AMAT's core servers

Parameters Bucketname :

[CLIENT]- pon-managedservices (name of customer's S3 bucket created during original deployment)

Clientstackname : [CLIENT]

EnvType : client ExternalCertName : printanywhere.com

Networkstackname : [NETWORK STACK] (the region where this will be setup for the customer eg. Ohio-1, Frankfurt, etc.)

OpsWorksVersion : Select highest/most recent available version

NOTE:

Machine names MUST be CAPITALIZED

Pas1name: [CLIENT][INSTANCE]-PAS1 eg. AMATC-PAS1

Enter PAS1 Serial Number

Pas2 name: [CLIENT][INSTANCE]-PAS2

Enter PAS2 Serial Number

Pdh1name: [CLIENT][INSTANCE]-PDH1

Enter PDH1 Serial Number

Pdh2name: [CLIENT][INSTANCE]-PDH2

Enter PDH2 Serial Number

PDHExpireTime : unless otherwise specified, leave this as the default value already populated

PDHRepositoryType : Choose File Share until further notice

Servicepassword : use same service password as was created originally (this information should be on the customer's AWS Deployment Information Confluence page)

SMTPPassword : use same SMTP Password as was created originally (if your current Production enviroment did not include an email service, use the same password as you used for the Service Account above)

SPAMASSASSINHOST: Was already populated with spamassassin.ohio-1.printanywhere.com

Select ‘Next’ then enter the tags:

Key Value
Client [CLIENT]
Project Managed Services
Network Stack [NETWORK STACK] eg. Ohio-1

Expand the ‘Advanced’ section, then disable the rollback on failure option Acknowledge the agreement, then select ‘next’, this process will take about 40 minutes to complete.

Validate new servers & configuration before continuing with DNS cutover

  • Visit the LBs directly as your DNS has not been cut over yet. To do this, go to OpsWorks and click on the new Stack you created. Go to the Instances and find the PONCONF Instance. Click the 'open in new tab' icon next to the ELB link. Once redirected you'll need to manually enter https:// & 8057 in the address bar to access it
  • Set PONCONF password (use the same password as was set in the original deployment)
  • Enable Authentication. The configuration should be there once you select the correct dropdown, but you just need to select the right option and click Apply Settings.
    NOTE:
    If the customer is using Azure AD or another 3rd Party iDM , authentication cannot be tested prior to the DNS update in Script 3. The reply URLs in place on the customer side will redirect you back to their active stack which has not been updated yet.
  • Set PDH Password (use the same password as was set in the original deployment)
  • Set RDP permissions See: [INTERNAL] - How to set RDP permissions for Enterprise Managed Cloud instances
  • Install any custom drivers
  • Create a 'PON_CPS_APIKEY' environment variable on each CPS machine to address dual PDGs See: INTERNAL - Enterprise Managed Cloud Print PDG sync fails every other time
    NOTE:
    PDG can still only operate with a single server active
  • Run through Test Plan
    NOTE:
    Create a new test printer and a new PDS serial number to be used for your testing. The PDH address will need to reflect the direct PDH LB and not the production PDH DNS ( eg. AMATC-PDHLoadBalan-1854PPT0SG0I5-1226882526.us-east-2.elb.amazonaws.com:443). Access CPS using the direct CPS LB and not the production DNS ( eg. AMATC-CPSLoadBalan-1D3ZC3DICBNNS-618132734.us-east-2.elb.amazonaws.com)
  • Copy Job Files from [CLIENT ][ PREVIOUS INSTANCE]-FS1 to [CLIENT][NEWLY CREATED INSTANCE]-FS1
    eg. If my new Instance is 'C', I would be copying files from [CLIENT]B-FS1 to [CLIENT]C-FS1
  • STOP and Notify IT of the new server. Things like Anti-virus, Windows Updates & PagerDuty alerts will need to be enabled by them before we move the DNS over and make it live

Make DNS changes

  1. Select ‘CloudFormation’ from the ‘Management Tools’ area
  2. Locate the DNS Stack for your Client eg. [CLIENT]-DNS
  3. Select it and choose 'Update Stack' from the Actions drop down menu
  4. Select ‘Specify an Amazon S3 template URL’
  5. Enter the URL script 3: Step-3-Client-Networking.json

(Script URLs always updated here: https://tools.printeron.com/confluence/display/MAN/Steps+to+Create+a+Basic+Cluster

Parameters

Stack Name: [CLIENT]-DNS

CLIENTSTACKNAME: [CLIENT]

Companyname : [CLIENT]

Opsworksstackname : [CLIENT][INSTANCE] NOTE: This field will be pre-populated with the current stack. You need to update this to reflect your new Instance eg. AMATC

Key Value
Client [CLIENT]
Project Managed Services
Network Stack [NETWORK STACK] eg. Ohio-1

Select ‘Next’

Select ‘Update’

Housekeeping items to be done once DNS has been moved:

  • Validate a few more print jobs through Web upload and Mobile app
  • Stop all the old instances for this client: In the archived Opsworks stack ( i.e. AMATB), go to the Instances tab, click the "Stop All Instances" button in the upper right corner
  • Update Confluence page with new IPs, host names and versions. We want to keep a history, so don't override the last details, make a copy of the table and enter in new details.
  • Add Change Request item to customer's Confluence Change Management page to say an upgrade was done and highlight any new additions ( ie . email, AirPrint , etc.)
  • Disable any services not being used - email, PDG, etc. Set the service to Manual start and not Disabled