Classic Application Service FAQ

Updated at:

What operating systems does Classic Application Service support?

Applications that use Technology Stack 1.0 architecture only support automated deployment on servers that run CentOS 6.5.

Applications that use Technology Stack 2.0 architecture support automated deployment on servers that run CentOS 6.5 and 7.2.

You can use custom technology stacks to support deployment on other operating systems.

Why does a release order or O&M order fail to initialize?

When you initialize a release order, the system checks the status of the application's servers. The server status must be Pending Release, Released, Releasing, or Release Failed. Initialization may fail for the following reasons:

  • No servers are created for the application.

  • The server is in a state that prevents a release, such as Creating, Stopped, or Restarting.

How do I deploy an application?

Classic Application Service provides features for application release and rollback. You can edit dependencies and server groups for the application and select a release policy. You can create a new release order on the deployment dashboard.

  1. On the deployment dashboard, click Create Release to go to the Release Request page.

  2. Enter the basic release information and click Quick Create. This action creates a release order for the application without any dependencies.

  3. To edit information such as the deployment policy, deployment parameters, and dependencies, click Edit Advanced Information to go to the advanced information page.

  4. Click Next to go to the release order preview page. After you confirm the information, click Create to create the release order.

  5. Click the application to go to its details page. On this page, you can adjust groups or perform a rollback.

How do I provide external access to an application after it is released to the cloud?

Use Server Load Balancer (SLB) to provide external access by attaching multiple Elastic Compute Service (ECS) instances. Traffic from external users is forwarded to the backend application servers through the SLB IP address.

What do I do if the deployed application is not the latest code version?

This issue may occur for the following reasons:

  • The wrong version was selected for the application release. Check the code version on the application details page to confirm.

  • This may be caused by a user folder permission issue. The release and deployment service performs operations using the permissions of the admin user. This issue occurs if the app-run folder is not owned by the admin account.

Troubleshooting method: Check the /home/admin/app-run directory. Run the ll app-run command to confirm that the directory is owned by the admin account.

Solutions:

  • You can directly initialize the server and republish.

  • Log on to the server, change the permissions on the app-ru directory for the admin user, and then retry the publish flow.

Why is a group automatically locked during a release?

A group is automatically locked because another release order is deploying to servers within that group. A message appears at the top of the application page: A server under this application is being released in another release order XXX. Click the release order link to view the application that is being released.

After the release to the server is complete, you can unlock the group and continue your release.

How do I upgrade an application's technology stack version?

You can view the application's technology stack and its version on the application details page. You can upgrade the technology stack version during deployment. The steps are as follows:

  1. Create a new release and go to the Edit Advanced Information page of the release request.

  2. On the Edit Advanced Information page, select the Upgrade/Downgrade Technology Stack checkbox in the Deployment Policy section. Select the target version for the upgrade or downgrade and proceed with the release.

How do I modify the technology stack after an application is created?

The release and deployment service does not currently support directly modifying a technology stack. To modify the technology stack, you must detach all resources from the application. Then, create a new application, select the target technology stack, and reassign the resources to the new application.

How do I troubleshoot a failed release?

Follow these steps to troubleshoot:

  1. Check the error log. Click Details to the right of the group to open the details page for each deployment step. Click Details to the right of the failed step to view the detailed log.

  2. Common reasons for deployment failure include the following:

    • Application system configuration issues. Check the error log for details.

    • Application service check failed: This is usually because the application failed to start. Log on to the server to view the detailed deployment logs. The deployment log directory is /home/admin/logs.

    • Failed to download the application: This usually occurs during go-live, rollback, or restart operations. This is often because the application package on the server was manually modified. Go-live, rollback, and restart operations perform an MD5 check on the application package. To resolve this, perform the deployment operation again.

    • If the steps to stop traffic, download the script package, install the environment, configure the environment, or start traffic fail, first click Retry Group to the right of the group. If the retry also fails, contact technical support for help.

How do I add a user to a project in financial technology GitLab?

You can only add users who have a financial technology account within the administrator's tenant. Therefore, before you add a new user, you must first ensure that they have an account in that tenant.

How do I customize a technology stack?

Custom technology stacks support mainstream development languages such as Java, C/C++, and PHP. You can customize technology stack instances to provide users with common software, custom software, custom scripts, and features such as creating code repositories, compiling, and packaging.

Procedure:

  1. In the Operations Management > Application > Technology Stack module, click Add.

  2. Enter a name for the technology stack, select a technology stack framework, and click OK to go to the Technology Stack Instance Details page.

  3. On the Technology Stack Instance Details page, you can configure common software, configure custom software, and upload custom scripts.

  4. After you finish editing, click Submit. The technology stack status changes to Submitted.

    You can then select this technology stack instance when you create an application.

Classic release fails but the application health check succeeds

Symptom

  • When you release an application using Classic Application Service, the release order shows that the application failed to start. However, when you run the health check script on the relevant server, the health check succeeds.

  • Error message: HealthCheck Remaining Time 120 seconds.

Cause

The health check script has a default timeout of 120 s. If the application takes longer than 120 s to start, the release and deployment platform considers the health check to have timed out and reports a deployment failure.

Solution

  1. Search for the keyword Started XXX in in the logs directory. Replace XXX with the application's startup class. This lets you find the application startup time in the log. For example:

    2019-01-2511:32:38,550[-/// - ] INFO  bootstrap.SOFABootWebApplication - Started SOFABootWebApplication in 10.848 seconds (JVM running for 12.085)
  2. In the conf/bin/healthcheck.sh health check script in the application's root directory, modify the health check timeout based on your application's actual startup time.