View this page in the latest version of Appian. Editing, Stopping, and Restarting Appian Share Share via LinkedIn Reddit Email Copy Link Print On This Page This page applies to self-managed environments only. It describes how to edit, stop, or restart an Appian site and how to restart the Application Server (webapp). Edit the Appian site In self-managed Appian environments, edits to certain site properties require either a full restart or a webapp-only restart. All other site properties can be edited on a running site. Changes requiring a full restart Note: In order to prevent users from inadvertently changing a field in the Appian CR configuration file that would cause a problem with the product, the Appian operator has a validating webhook that prevents immutable fields from being changed. The validating webhook is only enabled when webhooks.enabled is set to true in the Appian operator's Helm values. Properties that require a full restart are marked as immutable in the Appian CRD docs. The table below summarizes these immutable properties: Field Property Description DataServer image Configuration for the component's container image. replicas Desired number of replicas for Data Server. EngineOverrides replicas Desired number of replicas for the engine. Httpd image Configuration for the component's container image. Kafka image Configuration for the component's container image. replicas Desired number of replicas for Kafka. MirrorMaker image Configuration for the component's container image. RPA image Configuration for the RPA component's container image. version The RPA version. SearchServer image Configuration for the Search Server component's container image. replicas Desired number of replicas for Search Server. ServiceManager haExistingClaim Name of an existing ReadWriteMany (RWX) persistent volume claim for Service Manager's storage. image Configuration for the component's container image. replicas Desired number of replicas for Service Manager. ServiceManagerTopology analyticsExecShardCount Number of shards of the process analytics and process execution engines. StatefulComponent volumeClaimTemplateSpec Spec for the persistent volume claim template(s) for the component's stateful set(s). version The Appian platform version. Webapp haExistingClaim Name of an existing ReadWriteMany (RWX) persistent volume claim for Webapp's storage. healthCheckExistingClaim Name of an existing ReadWriteMany (RWX) persistent volume claim for Health Check's storage. image Configuration for the Webapp component's container image. Zookeeper image Configuration for the Zookeeper component's container image. replicas Desired number of replicas for Zookeeper. To change these properties: Stop the Appian site. Edit the Appian CR configuration file. Restart the Appian site. Changes requiring a webapp restart only Changes to certain .spec.customProperties fields in the Appian CR configuration file require that you restart the Application Server (webapp) for the changes to take effect. These properties include: Property Prefix Application Server Restart Needed appian.feature.* No conf.forms.* No conf.iam.* No conf.mailhandler.* No conf.node.webservice.* No conf.security.* No resources.appian.ag.application.* No resources.appian.ag.constants.* No resources.appian.applications.applications.* No resources.appian.km.file_icons.* No resources.appian.process.email-expressions.* No server.conf.* No All other prefixes Yes To change these properties: Edit the Appian CR configuration file. Restart the webapp component. (Optional) Check whether the custom properties on the webapp pod have been fully updated: 1 kubectl -n <NAMESPACE> exec <WEBAPP POD> -- cat /usr/local/appian/ae/conf/custom.properties Changes you can make to a running site For all Appian properties that do not require either a full restart or a webapp restart, you can change the properties while the site is still running. When you make these changes, the Appian operator automatically reconciles that change to any running custom resource it manages. For a list of these properties, see the Appian CRD docs. To change these properties, use the following command: 1 kubectl -n <NAMESPACE> edit appians <APPIAN NAME> where <APPIAN NAME> corresponds to the metadata.name property in the Appian CR configuration file. Stop the Appian site The following steps will stop all components of the Appian site. Note: Because most Appian components are StatefulSets with PersistentVolumesClaims, the component data is persisted when shutting down Appian. The Appian site can then be restarted without data loss. Get the name of your Appian site: 1 kubectl get -n <NAMESPACE> appians The response should contain the name, URL, status, and age of the site. For example: 1 2 NAME URL STATUS AGE appian http://myappiansite.com Ready 25m If you intend to restart the Appian site, make a copy of the existing Appian CR configuration file (appian.yaml) onto your computer. For example, you can: Print out the current appian custom resource definition. 1 kubectl -n <NAMESPACE> get appian <APPIAN NAME> -oyaml Copy the output and save as a YAML file. Delete the Appian site. 1 kubectl delete -n <NAMESPACE> appian <APPIAN NAME> For example: 1 kubectl delete -n my-site-namespace appian appian Shutdown can take some time and is a synchronous operation, so this command may appear to hang. Confirm the Appian site was deleted with the following commands. 1 kubectl -n <NAMESPACE> get pods 1 kubectl -n <NAMESPACE> get appians All Appian component pods should now be deleted. Output from running the get appians command should be: 1 No resources found in <NAMESPACE> namespace. If your site has issues shutting down, follow the steps in Troubleshooting site shutdown to debug. Restart the Appian site Having stopped the Appian site, you can restart as follows. Make desired changes to the Appian CR configuration file (appian.yaml). Run kubectl apply to restart the site with the changes: 1 kubectl apply -n <NAMESPACE> -f appian.yaml It will take about 20 minutes for the Appian site to fully recover. Check progress on the various Appian component pods with the following command. 1 kubectl -n <NAMESPACE> get pods The STATUS of the Appian component pods will transition from Creating to Starting to Running. When the Appian site is ready, you should see all pods have READY of 1/1 and STATUS of Running, similar to the following. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 NAME READY STATUS RESTARTS AGE appian-data-server-0 1/1 Running 0 25m appian-httpd-8658f7fdb7-k9f6j 1/1 Running 0 25m appian-httpd-bf56974d4-crv4g 1/1 Running 0 25m appian-kafka-0 1/1 Running 0 25m appian-search-server-0 1/1 Running 0 25m appian-service-manager-analytics00-0 1/1 Running 0 25m appian-service-manager-analytics01-0 1/1 Running 0 25m appian-service-manager-analytics02-0 1/1 Running 0 25m appian-service-manager-channels-0 1/1 Running 0 25m appian-service-manager-content-0 1/1 Running 0 25m appian-service-manager-download-stats-0 1/1 Running 0 25m appian-service-manager-execution00-0 1/1 Running 0 25m appian-service-manager-execution01-0 1/1 Running 0 25m appian-service-manager-execution02-0 1/1 Running 0 25m appian-service-manager-forums-0 1/1 Running 0 25m appian-service-manager-groups-0 1/1 Running 0 25m appian-service-manager-notifications-0 1/1 Running 0 25m appian-service-manager-notifications-email-0 1/1 Running 0 25m appian-service-manager-portal-0 1/1 Running 0 25m appian-service-manager-process-design-0 1/1 Running 0 25m appian-webapp-0 1/1 Running 0 25m appian-zookeeper-0 1/1 Running 0 25m If you have any trouble with creating the Appian site, see Troubleshooting site startup. Restart the webapp component You may need to restart the webapp component in the course of updating configurations such as changes to customProperties. Caution: This type of restart is only safe to do for the webapp component. If you need to change the configuration specific to any other component, we recommend doing a full restart to apply the changes. To restart the webapp component, delete its pod(s). 1 kubectl -n <NAMESPACE> delete pod <WEBAPP POD> The default grace shutdown period is set to 65 minutes (3900 seconds) to allow system processes to finish, but it can be customized. If you want to set a shorter grace period, add --grace-period= by setting the value in seconds. For example, if you want to delete the pod after 1 minute (60 seconds), execute the following: 1 kubectl -n <NAMESPACE> delete pod <WEBAPP POD> --grace-period=60 After deletion, Kubernetes will immediately start a new pod that will take on any configuration changes. Delete the Appian site To fully delete the Appian site on Kubernetes, including all data, you will need to delete the PersistentVolumes that are attached to the StatefulSets. Stop the Appian site. Get the existing PersistentVolumeClaims on the Appian namespace. 1 kubectl get persistentvolumeclaim For each Appian component that has a PersistentVolumeClaim (PVC), delete it with the following command. 1 kubectl delete persistentvolumeclaim <APPIAN COMPONENT PVC> Depending on how the PVC's reclaim policy is set up, deleting the PersistentVolumeClaim will in turn delete the PersistentVolume. Check that the Appian component PersistentVolumes were deleted with the following command. 1 kubectl get persistentvolume If any PersistentVolumes for Appian components still exist, you'll want to delete each of them with the following command. 1 kubectl delete persistentvolume <APPIAN COMPONENT PV> Uninstall the Appian operator Uninstall the Appian operator via helm uninstall: 1 helm --namespace appian-operator uninstall appian-operator --wait Delete the appian-operator namespace 1 kubectl delete namespace appian-operator Delete the Appian custom resource definition (CRD): 1 kubectl delete crd appians.crd.k8s.appian.com Feedback Was this page helpful? SHARE FEEDBACK Loading...