From 1ad5cb1b64c2453e6ac49037a1ad36678a58bcdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bal=C3=A1zs=20Czoma?= Date: Thu, 25 Feb 2021 10:10:20 -0500 Subject: [PATCH] OpenShift 4 support (#41) * Reworked / updated documentation for OpenShift 4 support * Synced templates to latest in PubSub+ Kubernetes quickstart including server TLS support * Added automation coverage --- .github/workflows/build-test.yml | 105 ++ README.md | 208 ++-- ci/README.md | 3 + ci/helmDeleteBroker | 7 + ci/helmInstallBroker | 11 + ci/shutdownCrc | 3 + ci/startCrc | 8 + ci/templateDeleteBroker | 6 + ci/templateInstallBroker | 10 + ci/testBroker | 17 + docs/PubSubPlusOpenShiftDeployment.md | 918 +++++++++--------- docs/images/Solace-HA-StatefulSet-Pods.png | Bin 42876 -> 32922 bytes docs/images/Solace-HA-StatefulSet.png | Bin 48004 -> 35829 bytes docs/images/Solace-HA-Storage.png | Bin 56180 -> 34791 bytes docs/images/Solace-Pod-Log-Stack.png | Bin 32012 -> 85494 bytes docs/images/Solace-Primary-Pod-Events.png | Bin 49153 -> 0 bytes .../Solace-Primary-Pod-Terminal-CLI.png | Bin 39797 -> 23648 bytes docs/images/network_diagram.jpg | Bin 124641 -> 98715 bytes scripts/addECRsecret.sh | 76 -- scripts/configureAWSOpenShift.sh | 119 --- scripts/copySolaceImageToECR.sh | 136 --- scripts/prepareDeleteAWSOpenShift.sh | 72 -- templates/eventbroker_ha_template.yaml | 626 +++++++----- .../eventbroker_singlenode_template.yaml | 256 +++-- 24 files changed, 1241 insertions(+), 1340 deletions(-) create mode 100644 .github/workflows/build-test.yml create mode 100644 ci/README.md create mode 100644 ci/helmDeleteBroker create mode 100644 ci/helmInstallBroker create mode 100644 ci/shutdownCrc create mode 100644 ci/startCrc create mode 100644 ci/templateDeleteBroker create mode 100644 ci/templateInstallBroker create mode 100644 ci/testBroker delete mode 100644 docs/images/Solace-Primary-Pod-Events.png delete mode 100755 scripts/addECRsecret.sh delete mode 100755 scripts/configureAWSOpenShift.sh delete mode 100755 scripts/copySolaceImageToECR.sh delete mode 100755 scripts/prepareDeleteAWSOpenShift.sh diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml new file mode 100644 index 0000000..593cea4 --- /dev/null +++ b/.github/workflows/build-test.yml @@ -0,0 +1,105 @@ +name: build + +# Controls when the action will run. +on: + # pull_request: + + push: + + #schedule: + #- cron: "0 2 * * *" + +jobs: + deploy: + name: OpenShift QuickStart CI test + runs-on: ubuntu-latest + timeout-minutes: 55 + + steps: + - name: Set env and tools + run: | + echo "TESTUSER=vagrant" >> $GITHUB_ENV # must exist + echo "TESTGCPMACHINE=openshift4x-test" >> $GITHUB_ENV # must exist + echo "TESTRUNBRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV + # Next command is commonly used to execute commands on the remote machine + remote_command='gcloud compute --project "capable-stream-180018" ssh --zone "us-east4-a" "${TESTUSER}@${TESTGCPMACHINE}" --quiet --command' + echo "REMOTE_COMMAND=${remote_command}" >> $GITHUB_ENV + # + sudo gem update --system 3.0.6 + sudo gem install yaml-lint + + - name: Checkout + uses: actions/checkout@v2 + + - name: Set up Cloud SDK + uses: google-github-actions/setup-gcloud@master + with: + project_id: ${{ secrets.GCP_PROJECT_ID }} + service_account_key: ${{ secrets.GCP_SA_KEY }} + export_default_credentials: true + + - name: Linting yaml files + run: | + yaml-lint -n templates/*.yaml + + - name: Prep target runner VM + run: | + if gcloud compute instances describe ${TESTGCPMACHINE} --project "capable-stream-180018" --zone "us-east4-a" | grep status | grep RUNNING ; then + echo "Test machine is already running, likely in use. Unable to continue this test run, exiting"; echo "RUNCONFLICT=true" >> $GITHUB_ENV; exit 1 + fi + gcloud compute instances start ${TESTGCPMACHINE} --project "capable-stream-180018" --zone "us-east4-a" + rm ~/.ssh/google_compute_* || echo "GCP certs were clean" + sleep 10 # wait for ssh keys to propagate + gcloud compute --project "capable-stream-180018" ssh --zone "us-east4-a" --force-key-file-overwrite --quiet "${TESTUSER}@${TESTGCPMACHINE}" --quiet --command "rm -f /opt/scripts/*; rm -f /opt/templates/*" # cleanup remote directories + gcloud compute --project "capable-stream-180018" scp --zone "us-east4-a" --quiet templates/* "${TESTUSER}@${TESTGCPMACHINE}:/opt/templates" # Copy templates to remote + gcloud compute --project "capable-stream-180018" scp --zone "us-east4-a" --quiet ci/* "${TESTUSER}@${TESTGCPMACHINE}:/opt/scripts" # Copy scripts to remote + + - name: Setup CodeReady Containers + run: | + shopt -s expand_aliases; alias remote_command=${REMOTE_COMMAND} + remote_command "chmod +x /opt/scripts/*" # ensure crc known start state + remote_command "/opt/scripts/shutdownCrc" || echo "crc was already stopped" # ensure crc known start state + remote_command "/opt/scripts/startCrc" # start crc + + - name: Deploy HA broker and test, using Helm install + run: | + shopt -s expand_aliases; alias remote_command=${REMOTE_COMMAND} + remote_command "/opt/scripts/helmInstallBroker helmtest" + remote_command "/opt/scripts/testBroker helmtest my-release-pubsubplus-dev" | tee out.txt + grep "aurelia" out.txt # web portal access + grep "Up" out.txt + grep "Up" out.txt + grep 100000 out.txt # smf messaging + remote_command "/opt/scripts/helmDeleteBroker helmtest" + rm -f out.txt + + - name: Deploy non-HA broker and test, using template install + run: | + shopt -s expand_aliases; alias remote_command=${REMOTE_COMMAND} + remote_command "/opt/scripts/templateInstallBroker templatenonha /opt/templates/eventbroker_singlenode_template.yaml" + remote_command "/opt/scripts/testBroker templatenonha my-release-pubsubplus" | tee out.txt + grep "aurelia" out.txt # web portal access + grep 100000 out.txt # smf messaging + remote_command "/opt/scripts/templateDeleteBroker templatenonha /opt/templates/eventbroker_singlenode_template.yaml" + rm -f out.txt + + - name: Deploy HA broker and test, using template install + run: | + shopt -s expand_aliases; alias remote_command=${REMOTE_COMMAND} + remote_command "/opt/scripts/templateInstallBroker templateha /opt/templates/eventbroker_ha_template.yaml" + remote_command "/opt/scripts/testBroker templateha my-release-pubsubplus" | tee out.txt + grep "aurelia" out.txt # web portal access + grep "Up" out.txt + grep "Up" out.txt + grep 100000 out.txt # smf messaging + remote_command "/opt/scripts/templateDeleteBroker templateha /opt/templates/eventbroker_ha_template.yaml" + + - name: Cleanup + if: ${{ always() }} + run: | + shopt -s expand_aliases; alias remote_command=${REMOTE_COMMAND} + # Only touch the remote VM if not used by someone else + if [[ ${RUNCONFLICT} != true ]]; then + remote_command "/opt/scripts/shutdownCrc" || echo "Issues found with remote command" + gcloud compute instances stop ${TESTGCPMACHINE} --project "capable-stream-180018" --zone "us-east4-a" + fi diff --git a/README.md b/README.md index 08e0212..b366f65 100644 --- a/README.md +++ b/README.md @@ -1,177 +1,115 @@ -# Deploying a Solace PubSub+ Software Event Broker onto an OpenShift 3.11 platform +# Deploying a Solace PubSub+ Software Event Broker onto an OpenShift 4 Platform -**NOTE: This version of the quick start supporting OpenShift 3.11 is an archive and no longer maintained. The [latest version](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart) of this quick start supports OpenShift 4.** - - -The [Solace PubSub+ Platform](https://solace.com/products/platform/)'s [software event broker](https://solace.com/products/event-broker/software/) efficiently streams event-driven information between applications, IoT devices and user interfaces running in the cloud, on-premises, and hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket. It can be installed into a variety of public and private clouds, PaaS, and on-premises environments, and brokers in multiple locations can be linked together in an [event mesh](https://solace.com/what-is-an-event-mesh/) to dynamically share events across the distributed enterprise. +Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform for the real-time enterprise. The [PubSub+ software event broker](https://solace.com/products/event-broker/software/) efficiently streams event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises, and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket. It can be installed into a variety of public and private clouds, PaaS, and on-premises environments. Event brokers in multiple locations can be linked together in an [event mesh](https://solace.com/what-is-an-event-mesh/) to dynamically share events across the distributed enterprise. ## Overview -This project is a best practice template intended for development and demo purposes. It has been tested using OpenShift v3.11. The tested and recommended Solace PubSub+ Software Event Broker version is 9.8. - -This document provides a quick getting started guide to install a Solace PubSub+ Software Event Broker in various configurations onto an OpenShift 3.11 platform. +This project is a best practice template intended for development and demo purposes. It has been tested using OpenShift v4.6. The tested and recommended Solace PubSub+ Software Event Broker version is 9.8. -Detailed OpenShift-specific documentation is provided in the [Solace PubSub+ on OpenShift Documentation](/docs/PubSubPlusOpenShiftDeployment.md). There is also a general [Solace PubSub+ on Kubernetes Documentation](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) available, which the OpenShift deployment builds upon. +This document provides a quick getting started guide to install a Solace PubSub+ Software Event Broker in various configurations onto an OpenShift 4 platform. For OpenShift 3.11, refer to the [archived version of this quick start](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart/tree/v1.1.1). -This guide is intended mainly for development and demo purposes. The recommended Solace PubSub+ Software Event Broker version is 9.4 or later. +For detailed instructions, see [Deploying a Solace PubSub+ Software Event Broker onto an OpenShift 4 platform](/docs/PubSubPlusOpenShiftDeployment.md). There is also a general quick start for [Solace PubSub+ on Kubernetes](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) available, which the OpenShift deployment builds upon. -The PubSub+ deployment does not require any special OpenShift Security Context, the default "restricted" SCC can be used. +The PubSub+ deployment does not require any special OpenShift Security Context; the default `restricted` SCC can be used. -We recommend using the Helm tool for convenience. An alternative method [using OpenShift templates](/docs/PubSubPlusOpenShiftDeployment.md#step-6-option-2-deploy-the-event-broker-using-the-openshift-templates-included-in-this-project) is also available. +We recommend using the Helm tool for convenience. An alternative method [using OpenShift templates](/docs/PubSubPlusOpenShiftDeployment.md#step-4-option-2-deploy-using-openshift-templates) is also available. -## How to deploy Solace PubSub+ Software Event Broker +## Deploying PubSub+ Software Event Broker -The event broker can be deployed in either a 3-node High-Availability (HA) group, or as a single-node standalone deployment. For simple test environments that need only to validate application functionality, a single instance will suffice. Note that in production, or any environment where message loss cannot be tolerated, an HA deployment is required. +The event broker can be deployed in either a three-node High-Availability (HA) group, or as a single-node standalone deployment. For simple test environments that need only to validate application functionality, a single instance will suffice. Note that in production, or any environment where message loss cannot be tolerated, an HA deployment is required. -In this quick start we go through the steps to set up an event broker using [Solace PubSub+ Helm charts](//hub.helm.sh/charts/solace). +In this quick start we go through the steps to set up an event broker using [Solace PubSub+ Helm charts](https://artifacthub.io/packages/search?page=1&repo=solace). There are three Helm chart variants available with default small-size configurations: -1. `pubsubplus-dev` - minimum footprint PubSub+ for Developers (standalone) -2. `pubsubplus` - PubSub+ standalone, supporting 100 connections -3. `pubsubplus-ha` - PubSub+ HA, supporting 100 connections +- `pubsubplus-dev`—deploys a minimum footprint software event broker for developers (standalone) +- `pubsubplus`—deploys a standalone software event broker that supports 100 connections +- `pubsubplus-ha`—deploys three software event brokers in an HA group that supports 100 connections -For other event broker configurations or sizes, refer to the [PubSub+ Software Event Broker Helm Chart documentation](/pubsubplus/README.md). +For other event broker configurations or sizes, refer to the [PubSub+ Software Event Broker Helm Chart](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/pubsubplus/README.md) documentation. -### 1. Get an OpenShift environment +### Step 1: Get an OpenShift Environment -There are [multiple ways](https://docs.openshift.com/index.html ) to get to an OpenShift 3.11 platform, including [MiniShift](https://github.com/minishift/minishift#welcome-to-minishift ). The [detailed Event Broker on OpenShift Documentation](/docs/PubSubPlusOpenShiftDeployment.md#step-1-optional--aws-deploy-openshift-container-platform-onto-aws-using-the-redhat-openshift-aws-quickstart-project) describes how to set up a production-ready Red Hat OpenShift Container Platform platform on AWS. +There are [multiple ways](https://www.openshift.com/try ) to get to an OpenShift 4 platform: +- The detailed [Event Broker on OpenShift](/docs/PubSubPlusOpenShiftDeployment.md#step-1-optional--aws-deploy-a-self-managed-openshift-container-platform-onto-aws) documentation describes how to set up production-ready Red Hat OpenShift Container Platform platform on AWS. +- An option for developers is to locally deploy an all-in-one environment using [CodeReady Containers](https://developers.redhat.com/products/codeready-containers/overview). +- An easy way to get an OpenShift cluster up and running is through the [Developer Sandbox](https://developers.redhat.com/developer-sandbox) program. You can sign up for a free 14-day trial. -Log in as `admin` using the `oc login -u admin` command. +Assuming you have access to an OpenShift 4 platform, log in as `kubeadmin` using the `oc login -u kubeadmin` command. + +Ensure your OpenShift environment is ready: -Check to ensure your OpenShift environment is ready: ```bash -# This shall return current user +# This command returns the current user oc whoami ``` -### 2. Install and configure Helm - -Note that Helm is transitioning from v2 to v3. Many deployments still use v2. PubSub+ can be deployed using either version, however concurrent use of v2 and v3 from the same command-line environment is not supported. Also note that there is a known [issue with using Helm v3 with OpenShift 3 objects](https://bugzilla.redhat.com/show_bug.cgi?id=1773682) and until resolved Helm v2 is recommended. +### Step 2: Install and Configure Helm -
Instructions for Helm v2 setup -

- -- First download the Helm v2 client. If using Windows, get the [Helm executable](https://storage.googleapis.com/kubernetes-helm/helm-v2.16.0-windows-amd64.zip ) and put it in a directory on your path. +Follow the [instructions from Helm](//github.com/helm/helm#install), or if you're using Linux, simply run: ```bash - # Download Helm v2 client, latest version if needed - curl -sSL https://raw.githubusercontent.com/helm/helm/master/scripts/get | bash +curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash ``` -- Use script to install the Helm v2 client and its Tiller server-side operator. This will deploy Tiller in a dedicated project. Do not use this project for your deployments. -```bash - # Setup local Helm client - helm init --client-only - # Install Tiller server-side operator into a new "tiller-project" - oc new-project tiller-project - oc process -f https://github.com/openshift/origin/raw/master/examples/helm/tiller-template.yaml -p TILLER_NAMESPACE="tiller-project" -p HELM_VERSION=v2.16.0 | oc create -f - - oc rollout status deployment tiller - # also let Helm know where Tiller was deployed - export TILLER_NAMESPACE=tiller-project -``` +Helm is configured properly if the `helm version` command returns no error. -

-
-
Instructions for Helm v3 setup -

+### Step 3: Install the Software Event Broker with the Default Configuration -- Use the [instructions from Helm](//github.com/helm/helm#install) or if using Linux simply run: -```bash - curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash -``` -

-
+1. Add the Solace Helm charts to your local Helm repo: + ```bash + helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts + ``` -Helm is configured properly if the command `helm version` returns no error. +2. Create a new project or switch to your existing project (do not use the `default` project as its loose permissions don't reflect a typical OpenShift environment) + ```bash + oc new-project solace-pubsub + ``` + By default the latest public [Docker image](https://hub.Docker.com/r/solace/solace-pubsub-standard/tags/) of PubSub+ Standard Edition available from the DockerHub registry is used. To use a different image, add the following values (comma-separated) to the `--set` commands in Step 3 below: -### 3. Install Solace PubSub+ Software Event Broker with default configuration + ```bash + image.repository=,image.tag= + ``` -- Add the Solace Helm charts to your local Helm repo: -```bash - helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts -``` + If it is required by the image repository, you can also add optionally add the following: + ```bash + image.pullSecretName= + ``` -- By default the publicly available [latest Docker image of PubSub+ Standard Edition](https://hub.Docker.com/r/solace/solace-pubsub-standard/tags/) will be used. [Load a different image into a registry](/docs/PubSubPlusOpenShiftDeployment.md#step-5-optional-load-the-event-broker-docker-image-to-your-docker-registry) if required. If using a different image, add the `image.repository=,image.tag=` values to the `--set` commands below, comma-separated. +3. Use one of the following Helm chart variants to create a deployment (for configuration options and deletion instructions, refer to the [PubSub+ Software Event Broker Helm Chart](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration) documentation): -- Create or switch to your project -```bash - oc new-project solace-pubsub -``` + - Create a Solace PubSub+ minimum deployment for development purposes using `pubsubplus-dev`. This variant requires a minimum of 1 CPU and 3.4 GiB of memory to be available to the PubSub+ event broker pod. + ```bash + # Deploy PubSub+ Standard edition, minimum footprint developer version + helm install my-release solacecharts/pubsubplus-dev \ + --set securityContext.enabled=false + ``` -
Instructions using Helm v2 -

+ - Create a Solace PubSub+ standalone deployment that supports 100 connections using `pubsubplus`. A minimum of 2 CPUs and 3.4 GiB of memory must be available to the PubSub+ pod. + ```bash + # Deploy PubSub+ Standard edition, standalone + helm install my-release solacecharts/pubsubplus \ + --set securityContext.enabled=false + ``` -- **Important**: For each new project using Helm v2, grant admin access to the server-side Tiller service from the "tiller-project" and set the TILLER_NAMESPACE environment. -```bash - oc policy add-role-to-user admin "system:serviceaccount:tiller-project:tiller" - # if not already exported, ensure Helm knows where Tiller was deployed - export TILLER_NAMESPACE=tiller-project -``` -> Ensure each command-line session has the TILLER_NAMESPACE environment variable properly set! - -- Use one of the chart variants to create a deployment. For configuration options and delete instructions, refer to the [PubSub+ Software Event Broker Helm Chart documentation](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration). - -a) Create a Solace PubSub+ minimum deployment for development purposes using `pubsubplus-dev`. It requires a minimum of 1 CPU and 2 GB of memory be available to the PubSub+ pod. -```bash - # Deploy PubSub+ Standard edition, minimum footprint developer version - helm install --name my-release solacecharts/pubsubplus-dev \ - --set securityContext.enabled=false -``` - -b) Create a Solace PubSub+ standalone deployment, supporting 100 connections scaling using `pubsubplus`. A minimum of 2 CPUs and 4 GB of memory must be available to the PubSub+ pod. -```bash - # Deploy PubSub+ Standard edition, standalone - helm install --name my-release solacecharts/pubsubplus \ - --set securityContext.enabled=false -``` - -c) Create a Solace PubSub+ HA deployment, supporting 100 connections scaling using `pubsubplus-ha`. The minimum resource requirements are 2 CPU and 4 GB of memory available to each of the three PubSub+ pods. -```bash - # Deploy PubSub+ Standard edition, HA - helm install --name my-release solacecharts/pubsubplus-ha \ - --set securityContext.enabled=false -``` -

-
- -
Instructions using Helm v3 -

- -- Use one of the chart variants to create a deployment. For configuration options and delete instructions, refer to the [PubSub+ Software Event Broker Helm Chart documentation](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration). - -a) Create a Solace PubSub+ minimum deployment for development purposes using `pubsubplus-dev`. It requires minimum 1 CPU and 2 GB of memory available to the PubSub+ event broker pod. -```bash - # Deploy PubSub+ Standard edition, minimum footprint developer version - helm install my-release solacecharts/pubsubplus-dev \ - --set securityContext.enabled=false -``` - -b) Create a Solace PubSub+ standalone deployment, supporting 100 connections scaling using `pubsubplus`. A minimum of 2 CPUs and 4 GB of memory must be available to the PubSub+ pod. -```bash - # Deploy PubSub+ Standard edition, standalone - helm install my-release solacecharts/pubsubplus \ - --set securityContext.enabled=false -``` - -c) Create a Solace PubSub+ HA deployment, supporting 100 connections scaling using `pubsubplus-ha`. The minimum resource requirements are 2 CPU and 4 GB of memory available to each of the three event broker pods. -```bash - # Deploy PubSub+ Standard edition, HA - helm install my-release solacecharts/pubsubplus-ha \ - --set securityContext.enabled=false -``` -

-
+ - Create a Solace PubSub+ HA deployment that supports 100 connections using `pubsubplus-ha`. This deployment requires that at least 2 CPUs and 3.4 GiB of memory are available to *each* of the three event broker pods. + ```bash + # Deploy PubSub+ Standard edition, HA + helm install my-release solacecharts/pubsubplus-ha \ + --set securityContext.enabled=false + ``` -The above options will start the deployment and write related information and notes to the screen. + All of the Helm options above start the deployment and write related information and notes to the console. -> Note: If using MiniShift an additional step is required to expose the service: `oc get --export svc my-release-pubsubplus`. This will return a service definition with nodePort port numbers for each message router service. Use these port numbers together with MiniShift's public IP address which can be obtained from the command `minishift ip`. + Broker services are exposed by default through a Load Balancer that is specific to your OpenShift platform. For details, see the `Services access` section of the notes written to the console. -Wait for the deployment to complete following the instructions, then you can [validate the deployment and try the management and messaging services](/docs/PubSubPlusOpenShiftDeployment.md#validating-the-deployment). +4. Wait for the deployment to complete, following any instructions that are written to the console. You can now [validate the deployment and try the management and messaging services](/docs/PubSubPlusOpenShiftDeployment.md#validating-the-deployment). + +> **Note**: There is no external Load Balancer support with CodeReady Containers. Services are accessed through NodePorts instead. Check the results of the `oc get svc my-release-pubsubplus` command. This command returns the ephemeral NodePort port numbers for each message router service. Use these port numbers together with CodeReady Containers' public IP addresses, which can be obtained by running the `crc ip` command. -If any issues, refer to the [Troubleshooting](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#troubleshooting) section of the general PubSub+ Kubernetes Documentation - substitute any `kubectl` commands with `oc` commands. +If you have any problems, refer to the [Troubleshooting](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#troubleshooting) section of the general PubSub+ Kubernetes Documentation for help. Substitute any `kubectl` commands with `oc` commands. -If you need to start over, follow the [steps to delete the current deployment](/docs/PubSubPlusOpenShiftDeployment.md#deleting-the-pubsub-event-broker-deployment). +If you need to start over, follow the steps to [delete the current deployment](/docs/PubSubPlusOpenShiftDeployment.md#deleting-a-deployment). ## Contributing @@ -180,7 +118,7 @@ Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduc ## Authors -See the list of [contributors](//github.com/SolaceProducts/solace-kubernetes-quickstart/graphs/contributors) who participated in this project. +See the list of [contributors](//github.com/SolaceProducts/pubsubplus-openshift-quickstart/graphs/contributors) who participated in this project. ## License @@ -190,6 +128,6 @@ This project is licensed under the Apache License, Version 2.0. - See the [LICEN For more information about Solace technology in general please visit these resources: -- The Solace Developer Portal website at: [solace.dev](//solace.dev/) +- The Solace Developer Portal website at [solace.dev](//solace.dev/) - Understanding [Solace technology](//solace.com/products/platform/) -- Ask the [Solace community](//dev.solace.com/community/). +- Ask the [Solace community](//dev.solace.com/community/) diff --git a/ci/README.md b/ci/README.md new file mode 100644 index 0000000..f366b0a --- /dev/null +++ b/ci/README.md @@ -0,0 +1,3 @@ +The scripts in this folder are used for CI, based on [RedHat CRC](https://developers.redhat.com/products/codeready-containers/overview) + +Assumptions: VM in GCP with "vagrant" user, CRC installed, /opt directory with `passw` and `pullsecret` contents. /opt/scripts and /opt/templates directory exist (no content needed). \ No newline at end of file diff --git a/ci/helmDeleteBroker b/ci/helmDeleteBroker new file mode 100644 index 0000000..4721357 --- /dev/null +++ b/ci/helmDeleteBroker @@ -0,0 +1,7 @@ +# Params: $1=Existing OpenShift project +eval $(crc oc-env) +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done +oc project $1 +helm delete my-release +oc delete pvc --all +oc delete project $1 \ No newline at end of file diff --git a/ci/helmInstallBroker b/ci/helmInstallBroker new file mode 100644 index 0000000..ef103e3 --- /dev/null +++ b/ci/helmInstallBroker @@ -0,0 +1,11 @@ +# Params: $1=OpenShift project to create +eval $(crc oc-env) +sudo sed -i 's/nameserver.*$/nameserver 1.1.1.1/g' /etc/resolv.conf +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done +oc new-project $1 +curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash +helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts +helm install my-release solacecharts/pubsubplus-dev --set solace.redundancy=true,securityContext.enabled=false,solace.usernameAdminPassword=admin +while ! oc get pods --show-labels | grep my-release-pubsubplus-dev | grep "active=true" ; do sleep 1; done +oc get pods --show-labels +oc get svc diff --git a/ci/shutdownCrc b/ci/shutdownCrc new file mode 100644 index 0000000..51b3f62 --- /dev/null +++ b/ci/shutdownCrc @@ -0,0 +1,3 @@ +crc stop -f +crc delete -f + diff --git a/ci/startCrc b/ci/startCrc new file mode 100644 index 0000000..a522115 --- /dev/null +++ b/ci/startCrc @@ -0,0 +1,8 @@ +cd /opt +sudo systemctl stop systemd-networkd.socket systemd-networkd networkd-dispatcher systemd-networkd-wait-online +sudo systemctl disable systemd-networkd.socket systemd-networkd networkd-dispatcher systemd-networkd-wait-online +sudo /etc/init.d/network-manager start +crc setup +crc start -p /opt/pullsecret -c 7 -m 26700 --nameserver 1.1.1.1 +eval $(crc oc-env) +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done diff --git a/ci/templateDeleteBroker b/ci/templateDeleteBroker new file mode 100644 index 0000000..02c0cb5 --- /dev/null +++ b/ci/templateDeleteBroker @@ -0,0 +1,6 @@ +# Params: $1=existing OpenShift project $2=template with full path +eval $(crc oc-env) +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done +oc project $1 +oc process -f $2 DEPLOYMENT_NAME=my-release BROKER_ADMIN_PASSWORD=YWRtaW4= | oc delete -f - +oc delete pvc --all diff --git a/ci/templateInstallBroker b/ci/templateInstallBroker new file mode 100644 index 0000000..225b573 --- /dev/null +++ b/ci/templateInstallBroker @@ -0,0 +1,10 @@ +# Params: $1=OpenShift project to create $2=template with full path +eval $(crc oc-env) +sudo sed -i 's/nameserver.*$/nameserver 1.1.1.1/g' /etc/resolv.conf +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done +oc new-project $1 +sed -i 's@cpu: "2"@cpu: "1"@g' $2 # reduce CPU requirements for the test deployment +oc process -f $2 DEPLOYMENT_NAME=my-release BROKER_IMAGE_REGISTRY_URL=solace/solace-pubsub-standard BROKER_IMAGE_TAG=latest BROKER_STORAGE_SIZE=10Gi BROKER_ADMIN_PASSWORD=YWRtaW4= | oc create -f - # admin password is admin +while ! oc get pods --show-labels | grep my-release | grep "active=true" ; do sleep 1; done +oc get pods --show-labels +oc get svc diff --git a/ci/testBroker b/ci/testBroker new file mode 100644 index 0000000..5b51a00 --- /dev/null +++ b/ci/testBroker @@ -0,0 +1,17 @@ +# Params: $1=Existing OpenShift project $2=Broker service name +eval $(crc oc-env) +sudo sed -i 's/nameserver.*$/nameserver 1.1.1.1/g' /etc/resolv.conf +while ! oc login -u kubeadmin -p `cat /opt/passw` https://api.crc.testing:6443 ; do sleep 1 ; done +oc project $1 +export IP=`oc get svc $2 -o yaml | grep clusterIP | awk -F': ' '{print $NF}'` +oc run nginx --image nginx +while ! oc get po | grep nginx | grep Running ; do sleep 1; done +oc exec -it nginx -- curl $IP:8080 | grep aurelia +oc exec -it nginx -- curl -O https://sftp.solace.com/download/SDKPERF_C_LINUX64 +oc exec -it nginx -- tar -xvf SDKPERF_C_LINUX64 +sleep 15 +oc exec -it nginx -- pubSubTools/sdkperf_c -cip=$IP -mn=100000 -mr=0 -ptl=t1 -stl=t1 | grep "Total Messages" +oc exec -it nginx -- curl -sS -u admin:admin http://$IP:8080/SEMP -d "" +oc exec -it nginx -- curl -sS -u admin:admin http://$IP:8080/SEMP -d "" +oc delete pod nginx + diff --git a/docs/PubSubPlusOpenShiftDeployment.md b/docs/PubSubPlusOpenShiftDeployment.md index 9473908..7fafddc 100644 --- a/docs/PubSubPlusOpenShiftDeployment.md +++ b/docs/PubSubPlusOpenShiftDeployment.md @@ -1,498 +1,466 @@ -# Deploying a Solace PubSub+ Software Event Broker onto an OpenShift 3.11 platform +# Deploying a Solace PubSub+ Software Event Broker onto an OpenShift 4 Platform -**NOTE: This version of the quick start supporting OpenShift 3.11 is an archive and no longer maintained. The [latest version](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart) of this quick start supports OpenShift 4.** +Solace PubSub+ Software Event Broker meets the needs of big data, cloud migration, and Internet-of-Things initiatives, and enables microservices and event-driven architecture. Capabilities include topic-based publish/subscribe, request/reply, message queues/queueing, and data streaming for IoT devices and mobile/web apps. The event broker supports open APIs and standard protocols including AMQP, JMS, MQTT, REST, and WebSocket. As well, it can be deployed in on-premises datacenters, natively within private and public clouds, and across complex hybrid cloud environments. +This repository provides an example of how to deploy the Solace PubSub+ Software Event Broker onto an OpenShift 4 platform, including the steps to set up a Red Hat OpenShift Container Platform platform on AWS. -This is detailed documentation of deploying Solace PubSub+ Software Event Broker onto an OpenShift 3.11 platform including steps to set up a Red Hat OpenShift Container Platform platform on AWS. -* For a hands-on quick start using an existing OpenShift platform, refer to the [Quick Start guide](/README.md). -* For considerations about deploying in a general Kubernetes environment, refer to the [Solace PubSub+ on Kubernetes Documentation](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) -* For the `pubsubplus` Helm chart configuration options, refer to the [PubSub+ Software Event Broker Helm Chart Reference](/pubsubplus/README.md). +## Overview +There are [multiple ways](https://www.openshift.com/try ) to get to an OpenShift platform. This example uses the Red Hat OpenShift Container Platform for deploying an HA group of software event brokers, but the concepts are transferable to other compatible platforms. We also provide tips for how to set up a simple single-node deployment using [CodeReady Containers](https://developers.redhat.com/products/codeready-containers/overview ) (the equivalent of MiniShift for OpenShift 4) for development, testing, or proof of concept purposes. -Contents: - * [Purpose of this Repository](#purpose-of-this-repository) - * [Description of the Solace PubSub+ Software Event Broker](#description-of-solace-pubsub-software-event-broker) - * [Production Deployment Architecture](#production-deployment-architecture) - * [Deployment Options](#deployment-options) - - [Option 1, using Helm](#option-1-using-helm) - - [Option 2, using OpenShift templates](#option-2-using-openshift-templates) - * [How to deploy Solace PubSub+ onto OpenShift / AWS](#how-to-deploy-solace-pubsub-onto-openshift--aws) - + [Step 1: (Optional / AWS) Deploy OpenShift Container Platform onto AWS using the RedHat OpenShift AWS QuickStart Project](#step-1-optional--aws-deploy-openshift-container-platform-onto-aws-using-the-redhat-openshift-aws-quickstart-project) - + [Step 2: Prepare your workspace](#step-2-prepare-your-workspace) - + [Step 3: (Optional: only execute for Deployment option 1) Install the Helm v2 client and server-side tools](#step-3-optional-only-execute-for-deployment-option-1-install-the-helm-v2-client-and-server-side-tools) - + [Step 4: Create a new OpenShift project to host the event broker deployment](#step-4-create-a-new-openshift-project-to-host-the-event-broker-deployment) - + [Step 5: Optional: Load the event broker (Docker image) to your Docker Registry](#step-5-optional-load-the-event-broker-docker-image-to-your-docker-registry) - + [Step 6-Option 1: Deploy the event broker using Helm](#step-6-option-1-deploy-the-event-broker-using-helm) - + [Step 6-Option 2: Deploy the event broker using the OpenShift templates included in this project](#step-6-option-2-deploy-the-event-broker-using-the-openshift-templates-included-in-this-project) - * [Validating the Deployment](#validating-the-deployment) - + [Viewing Bringup Logs](#viewing-bringup-logs) - * [Gaining Admin and SSH access to the event broker](#gaining-admin-and-ssh-access-to-the-event-broker) - * [Testing data access to the event broker](#testing-data-access-to-the-event-broker) - * [Deleting a deployment](#deleting-a-deployment) - + [Deleting the PubSub+ deployment](#deleting-the-pubsub-deployment) - + [Deleting the AWS OpenShift Container Platform deployment](#deleting-the-aws-openshift-container-platform-deployment) - * [Special topics](#special-topics) - + [Using NFS for persistent storage](#using-nfs-for-persistent-storage) - * [Resources](#resources) +The supported Solace PubSub+ Software Event Broker version is 9.7 or later. +For the Red Hat OpenShift Container Platform, we use a self-managed 60-day evaluation subscription of [RedHat OpenShift cluster in AWS](https://cloud.redhat.com/openshift/install#public-cloud ) in a highly redundant configuration, spanning three zones. -## Purpose of this Repository +This repository expands on the [Solace Kubernetes Quickstart](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/README.md ) to provide an example of how to deploy Solace PubSub+ in an HA configuration on the OpenShift Container Platform running in AWS. -This repository provides an example of how to deploy the Solace PubSub+ Software Event Broker onto an OpenShift 3.11 platform. There are [multiple ways](https://docs.openshift.com/index.html ) to get to an OpenShift platform, including [MiniShift](https://github.com/minishift/minishift#welcome-to-minishift ). This guide will specifically use the Red Hat OpenShift Container Platform for deploying an HA group but concepts are transferable to other compatible platforms. There will be also hints on how to set up a simple single-node MiniKube deployment using MiniShift for development, testing or proof of concept purposes. +The event broker deployment does not require any special OpenShift Security Context; the default ["restricted" SCC](https://docs.openshift.com/container-platform/latest/authentication/managing-security-context-constraints.html ) can be used. -The supported Solace PubSub+ Software Event Broker version is 9.4 or later. -For the Red Hat OpenShift Container Platform, we utilize the [RedHat OpenShift on AWS QuickStart](https://aws.amazon.com/quickstart/architecture/openshift/ ) project to deploy a Red Hat OpenShift Container Platform on AWS in a highly redundant configuration, spanning 3 zones. +### Related Information -This repository expands on the [Solace Kubernetes Quickstart](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/README.md ) to provide an example of how to deploy Solace PubSub+ in an HA configuration on the OpenShift Container Platform running in AWS. +You might also be interested in one of the following: +- For a hands-on quick start using an existing OpenShift platform, refer to the [Quick Start guide](/README.md). +- For considerations about deploying in a general Kubernetes environment, refer to the [Solace PubSub+ on Kubernetes Documentation](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) +- For the `pubsubplus` Helm chart configuration options, refer to the [PubSub+ Software Event Broker Helm Chart Reference](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration). +- For OpenShift 3.11, refer to the [archived version of this project](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart/tree/v1.1.1). -The event broker deployment does not require any special OpenShift Security Context, the [default "restricted" SCC](//docs.openshift.com/container-platform/3.11/admin_guide/manage_scc.html) can be used. -## Description of Solace PubSub+ Software Event Broker +## Table of Contents +- [Production Deployment Architecture](#production-deployment-architecture) +- [Deployment Tools](#deployment-tools) + - [Helm Charts](#helm-charts) + - [OpenShift Templates](#openshift-templates) +- [Deploying Solace PubSub+ onto OpenShift / AWS](#deploying-solace-pubsub-onto-openshift--aws) + - [Step 1: (Optional / AWS) Deploy a Self-Managed OpenShift Container Platform onto AWS](#step-1-optional--aws-deploy-a-self-managed-openshift-container-platform-onto-aws) + - [Step 2: (Optional / ECR) Use a Private Image Registry](#step-2-optional--ECR-use-a-private-image-registry) + - [Step 3, Option 1: Deploy Using Helm](#step-3-option-1-deploy-using-helm) + - [Step 3, Option 2: Deploy Using OpenShift Templates](#step-3-option-2-deploy-using-openshift-templates) +- [Validating the Deployment](#validating-the-deployment) + - [Viewing the Bringup logs](#viewing-the-bringup-logs) +- [Gaining Admin and SSH Access to the Event Broker](#gaining-admin-and-ssh-access-to-the-event-broker) +- [Testing Data Access to the Event Broker](#testing-data-access-to-the-event-broker) +- [Deleting a Deployment](#deleting-a-deployment) + - [Delete the PubSub+ Deployment](#delete-the-pubsub-deployment) + - [Delete the AWS OpenShift Container Platform Deployment](#deleting-the-aws-openshift-container-platform-deployment) +- [Experimental: Using NFS for Persistent Storage](#experimental-using-nfs-for-persistent-storage) +- [Resources](#resources) -Solace PubSub+ Software Event Broker meets the needs of big data, cloud migration, and Internet-of-Things initiatives, and enables microservices and event-driven architecture. Capabilities include topic-based publish/subscribe, request/reply, message queues/queueing, and data streaming for IoT devices and mobile/web apps. The event broker supports open APIs and standard protocols including AMQP, JMS, MQTT, REST, and WebSocket. As well, it can be deployed in on-premise datacenters, natively within private and public clouds, and across complex hybrid cloud environments. ## Production Deployment Architecture -The following diagram shows an example HA deployment in AWS: +The following diagram shows an example of an HA group deployment of PubSub+ software event brokers in AWS: ![alt text](/docs/images/network_diagram.jpg "Network Diagram")
-Key parts are the three PubSub+ Container instances in OpenShift pods, deployed on OpenShift (worker) nodes; the cloud load balancer exposing the event router's services and management interface; the OpenShift master nodes(s); and the Ansible Config Server, which acts as a bastion host for external ssh access. - -## Deployment Options - -#### Option 1, using Helm - -This option allows great flexibility using the Kubernetes `Helm` tool to automate the process of event broker deployment through a wide range of configuration options including in-service rolling upgrade of the event broker. The [Solace Kubernetes QuickStart project](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master ) will be referred to deploy the event broker onto your OpenShift environment. - -#### Option 2, using OpenShift templates - -This option can be used directly, without any additional tool to deploy the event broker in a limited number of configurations, using OpenShift templates included in this project. Follow the [steps provided](#step-6-option-2-deploy-the-event-broker-using-the-openshift-templates-included-in-this-project). - - -## How to deploy Solace PubSub+ onto OpenShift / AWS - -The following steps describe how to deploy an event broker onto an OpenShift environment. Optional steps are provided about setting up a Red Hat OpenShift Container Platform on Amazon AWS infrastructure (marked as Optional / AWS) and if you use AWS Elastic Container Registry to host the Solace PubSub+ Docker image (marked as Optional / ECR). - -**Hint:** You may skip Step 1 if you already have your own OpenShift environment available. - -> Note: If using MiniShift follow the [instructions to get to a working MiniShift deployment](https://docs.okd.io/latest/minishift/getting-started/index.html ). If using MiniShift in a Windows environment one easy way to follow the shell scripts in the subsequent steps of this guide is to use [Git BASH for Windows](https://gitforwindows.org/ ) and ensure any script files are using Unix style line endings by running the `dos2unix` tool if needed. - -### Step 1: (Optional / AWS) Deploy OpenShift Container Platform onto AWS using the RedHat OpenShift AWS QuickStart Project - -* (Part I) Log into the AWS Web Console and run the [OpenShift AWS QuickStart project](https://aws.amazon.com/quickstart/architecture/openshift/ ), which will use AWS CloudFormation for the deployment. We recommend you deploy OpenShift across 3 AWS Availability Zones for maximum redundancy. Please refer to the RedHat OpenShift AWS QuickStart guide and supporting documentation: - - * [Deploying and Managing OpenShift on Amazon Web Services](https://access.redhat.com/documentation/en-us/reference_architectures/2018/html/deploying_and_managing_openshift_3.9_on_amazon_web_services/ ) - - **Important:** As described in above documentation, this deployment requires a Red Hat account with a valid Red Hat subscription to OpenShift and will consume 10 OpenShift entitlements in a maximum redundancy configuration. When no longer needed ensure to follow the steps in the [Deleting the OpenShift Container Platform deployment](#deleting-the-openshift-container-platform-deployment ) section of this guide to free up the entitlements. +The key parts to note in the diagram above are: +- the three PubSub+ Container instances in OpenShift pods, deployed on OpenShift (worker) nodes +- the cloud load balancer exposing the event router's services and management interface +- the OpenShift master nodes(s) +- the CLI console that hosts the `oc` OpenShift CLI utility client + +## Deployment Tools + +There are two options for tooling to use to deploy the Kubernetes cluster: Helm charts and OpenShift templates. + +#### Helm Charts + +The Kubernetes `Helm` tool allows great flexibility, allowing the process of event broker deployment to be automated through a wide range of configuration options including in-service rolling upgrade of the event broker. This example refers to the [Solace Kubernetes QuickStart project](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master ) for the Helm setting to use to deploy the event broker onto your OpenShift environment. + +#### OpenShift Templates + +You can directly use the OpenShift templates included in this project, without any additional tools, to deploy the event broker in a limited number of configurations. Follow the instructions for deploying using OpenShift templates in [Step 3, Option 2](#step-3-option-2-deploy-using-openshift-templates), below. + + +## Deploying Solace PubSub+ onto OpenShift / AWS + +The following steps describe how to deploy an event broker onto an OpenShift environment. Optional steps are provided for: +- setting up a self-managed Red Hat OpenShift Container Platform on Amazon AWS infrastructure (marked as *Optional / AWS*) +- using AWS Elastic Container Registry to host the Solace PubSub+ Docker image (marked as *Optional / ECR*). + +**Tip:** You can skip Step 1 if you already have your own OpenShift environment available. + +> Note: If you are using CodeReady Containers, follow the [getting started instructions](https://developers.redhat.com/products/codeready-containers/getting-started) to stand up a working CodeReady Containers deployment that supports Linux, MacOS, and Windows. At the `crc start` step it is helpful to: have a local `pullsecret` file created; specify CPU and memory requirements, allowing 2 to 3 CPU and 2.5 to 7 GiB memory for CRC internal purposes (depending on your platform and CRC version); also specify a DNS server, for example: `crc start -p ./pullsecret -c 5 -m 11264 --nameserver 1.1.1.1`. + +### Step 1: (Optional / AWS) Deploy a Self-Managed OpenShift Container Platform onto AWS + +This step requires the following: +- a free Red Hat account. You can create one [here](https://developers.redhat.com/login ), if needed. +- a command console on your host platform with Internet access. The examples here are for Linux, but MacOS is also supported. +- a designated working directory for the OpenShift cluster installation. The automated install process creates files here that are required later for deleting the OpenShift cluster. + ``` + mkdir ~/workspace; cd ~/workspace + ``` + +To deploy the container platform in AWS, do the following: +1. If you haven't already, log in to your RedHat account. +2. On the [**Create an OpenShift cluster**](https://cloud.redhat.com/openshift/create) page, under **Run it yourself**, select **AWS**. +3. On the [**Install OpenShift Container Platform 4**](https://cloud.redhat.com/openshift/install#public-cloud ) page, select **Installer-provisioned infrastructure**. A page is displayed that allows you to download the the required binaries and documentation. +3. Select your OS, and then make a note of the URL of the "Download installer" button. +4. On your host, in the command console, run the following commands to download and expand the OpenShift installer: + ``` + wget # Use the link address from the "Download installer" button + tar -xvf openshift-install-linux.tar.gz # Adjust the filename if needed + rm openshift-install-linux.tar.gz + ``` +5. Run the utility to create an install configuration. Provide the necessary information at the prompts, including the Pull Secret from the RedHat instructions page. This will create the file `install-config.yaml` with the [installation configuration parameters](https://docs.openshift.com/container-platform/latest/installing/installing_aws/installing-aws-customizations.html#installation-aws-config-yaml_installing-aws-customizations), most importantly the configuration for the worker and master nodes. + ``` + ./openshift-install create install-config --dir=. + ``` +6. Edit the `install-config.yaml` file to update the worker node AWS machine type to meet the [minimum CPU and Memory requirements](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#cpu-and-memory-requirements) for the targeted PubSub+ Software Event Broker configuration. When you select an [EC2 instance type](https://aws.amazon.com/ec2/instance-types/), allow at least 1 CPU and 1 GiB memory for OpenShift purposes that cannot be used by the broker. The following is an example updated configuration: + ``` + ... + compute: + - architecture: amd64 + hyperthreading: Enabled + name: worker + platform: + aws: + type: m5.2xlarge # Adjust to your requirements + replicas: 3 + ... + ``` +7. Create a backup copy of the configuration file, then launch the installation. The installation may take 40 minutes or more. + ``` + cp install-config.yaml install-config.yaml.bak + ./openshift-install create cluster --dir=. + ``` +8. If the installation is successful, information similar to the following is written to the command console. Take note of the web-console URL and login information for future reference. + ``` + INFO Install complete! + INFO To access the cluster as the system:admin user when using 'oc', run 'export KUBECONFIG=/opt/auth/kubeconfig' + INFO Access the OpenShift web-console here: https://console-openshift-console.apps.iuacc.soltest.net + INFO Login to the console with user: "kubeadmin", and password: "CKGc9-XUT6J-PDtWp-d4DSQ" + ``` +9. [Install](https://docs.openshift.com/container-platform/latest/installing/installing_aws/installing-aws-default.html#cli-installing-cli_installing-aws-default) the `oc` client CLI tool. +10. Verify that your cluster is working correctly by following the hints from step 8, including verifying access to the OpenShift web-console. + + +### Step 2: (Optional / ECR) Use a Private Image Registry + +By default, the deployment scripts pull the Solace PubSub+ image from [Docker Hub](https://hub.docker.com/r/solace/solace-pubsub-standard/tags?page=1&ordering=last_updated). If the OpenShift worker nodes have Internet access, no further configuration is required. + +However, if you need to use a private image registry, such as AWS ECR, you must supply a pull secret to enable access to the registry. The steps that follow show how to use AWS ECR for the broker image. + +1. Download a free trial of the the Solace PubSub+ Enterprise Evaluation Edition by going to the **Docker** section of the [Solace Downloads](https://solace.com/downloads/?fwp_downloads_types=pubsub-enterprise-evaluation) page, or obtain an image from Solace Support. +2. Push the broker image to the private registry. Follow the specific procedures for the registry you are using. For ECR, see [Using Amazon ECR with the AWS CLI](https://docs.aws.amazon.com/AmazonECR/latest/userguide/getting-started-cli.html). + >Note: If you are advised to run `aws ecr get-login-password` as part of the "Authenticate to your registry" step and it fails, try running `$(aws ecr get-login --region --no-include-email)` instead. + ![alt text](/docs/images/ECR-Registry.png "ECR Registry") +3. Create a pull secret from the registry information in the Docker configuration. This assumes that the ECR login happened on the same machine: + ``` + oc create secret generic \ + --from-file=.dockerconfigjson=$(readlink -f ~/.docker/config.json) \ + --type=kubernetes.io/dockerconfigjson + ``` +4. Use the pull secret you just created (``) in the deployment section, Step 3, below. + +For additional information, see the [Using private registries](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#using-private-registries) and [Using ImagePullSecrets for signed images](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#using-imagepullsecrets-for-signed-images) sections of the Solace Kubernetes Quickstart documentation. + +#### Using CodeReady Containers +If you are using CodeReady Containers, you may need to perform a workaround if the ECR login fails on the console (e.g., on Windows). In this case, do the following: +1. Log into the OpenShift node: `oc get node` +2. Run the `oc debug node/` command. +3. At the prompt, run the `chroot /host` command. +4. Run the following command: + ```` + echo "" | podman login --username AWS --password-stdin + ```` + Where: + - ``: The text returned from the [`aws ecr get-login-password --region `](https://docs.aws.amazon.com/cli/latest/reference/ecr/get-login-password.html) command. Run this command from a different machine where `aws` is installed (it is not straightforward to install the `aws` CLI on the CoreOS running on the node). + - ``: The URI for your ECR registry, for example `9872397498329479394.dkr.ecr.us-east-2.amazonaws.com`. +5. Run `podman pull ` to load the image locally on the CRC node. + After you exit the node, you can use your ECR image URL and tag for the deployment. There is no need for a pull secret in this case. + +### Step 3, Option 1: Deploy using Helm + +Using Helm to deploy your cluster offers more flexibility in terms of event broker deployment options, compared to those offered by OpenShift templates (see [Option 2](#step-3-option-2-deploy-using-openshift-templates)). + +Additional information is provided in the following documents: +- [Solace PubSub+ on Kubernetes Deployment Guide](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) +- [Kubernetes Deployment Quick Start Guide](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/README.md) + +This deployment uses PubSub+ Software Event Broker Helm charts. You can customize it by overriding the [default chart parameters](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration). + +Consult the [Deployment Considerations](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#pubsub-software-event-broker-deployment-considerations) section of the general Event Broker in Kubernetes Documentation when planning your deployment. + +In particular, the `securityContext.enabled` parameter must be set to `false`, indicating not to use the provided pod security context but to let OpenShift set it using SecurityContextConstraints (SCC). By default OpenShift will use the "restricted" SCC. + +By default the latest publicly available [Docker image](https://hub.Docker.com/r/solace/solace-pubsub-standard/tags/) of PubSub+ Standard Edition is used. Use a different image tag if required or [use an image from a different registry](#step-2-optional--ecr-use-a-private-image-registry). If you're using a different image, add the `image.repository=,image.tag=` values (comma-separated) to the `--set` commands below. Also specify a pull secret if required: `image.pullSecretName=` + +The broker can be [vertically scaled](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#deployment-scaling ) using the `solace.size` chart parameter. + +#### Steps: +1. Install Helm. Use the [instructions from Helm](//github.com/helm/helm#install), or if you're using Linux simply run the following command: + ```bash + curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash + ``` + Helm is configured properly if the command `helm version` returns no error. +2. Create a new project or switch to your existing project (do not use the `default` project as its loose permissions don't reflect a typical OpenShift environment): + ``` + oc new-project solace-pubsub # adjust your project name as needed here and in subsequent commands + ``` +3. Follow one of the examples below to deploy your cluster. + + ##### For an _HA_ Deployment: + ```bash + # One-time action: Add the PubSub+ charts to local Helm + helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts + # Initiate the HA deployment - specify an admin password + helm install my-ha-release \ + --set securityContext.enabled=false,solace.redundancy=true,solace.usernameAdminPassword= \ + solacecharts/pubsubplus + # Check the notes printed on screen + # Wait until all pods are running, ready, and the active event broker pod label is "active=true" + oc get pods --show-labels -w + ``` + + ##### For a Single-Node, _Non-HA_ Deployment (Using a _Pull_ _Secret_): + ```bash + # One-time action: Add the PubSub+ charts to local Helm + helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts + # Initiate the non-HA deployment - specify an admin password + helm install my-nonha-release \ + --set securityContext.enabled=false,solace.redundancy=false,solace.usernameAdminPassword= \ + --set image.pullSecretName= \ + solacecharts/pubsubplus + # Check the notes printed on screen + # Wait until the event broker pod is running, ready, and the pod label is "active=true" + oc get pods --show-labels -w + ``` + + **Note**: As an alternative to longer `--set` parameters, it is possible to define the same parameter values in a YAML file: + ```yaml + # Create example values file - specify an admin password + echo " + securityContext + enabled: false + solace + redundancy: false, + usernameAdminPassword: " > deployment-values.yaml + # Use values file + helm install my-release \ + -v deployment-values.yaml \ + solacecharts/pubsubplus + ``` + +### Step 3, Option 2: Deploy Using OpenShift Templates + +This option use an OpenShift template and doesn't require Helm. This option assumes that you have completed [Step 2](#step-2-optional-using-a-private-image-registry) if required. + +#### About the Template: +- You can copy templates files from the GitHub location to your local disk, edit them, and use them from there. +- Before you deploy, ensure that you determine your event broker [disk space requirements](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#disk-storage). The `BROKER_STORAGE_SIZE` parameter in the template has a default value of 30 gigabytes of disk space. You may need to update this value. +- By default, the template provisions a broker supporting 100 connections. You can adjust `export system_scaling_maxconnectioncount` in the template to increase the number of connections, but you must also ensure that adequate resources are available to the pod(s) by adjusting both `cpu` and `memory` requests and limits. For details, refer to the [System Resource Requirements](https://docs.solace.com/Configuring-and-Managing/SW-Broker-Specific-Config/System-Resource-Requirements.htm) in the Solace documentation. +- If using you are using [TLS to access broker services](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#enabling-use-of-tls-to-access-broker-services), you must configure a server key and certificate on the broker(s). Uncomment the related parts of the template file in your local copy and also specify a value for the `BROKER_TLS_CERT_SECRET` parameter. + + +#### Steps: + +1. Define a strong password for the 'admin' user of the event broker, and then base64 encode the value: + ``` + echo -n 'strong@dminPw!' | base64 + ``` + You will use this value as a parameter when you process the event broker OpenShift template. +2. Create a new project or switch to your existing project (do not use the `default` project as its loose permissions don't reflect a typical OpenShift environment): + ``` + oc new-project solace-pubsub # adjust your project name as needed here and in subsequent commands + ``` +3. Follow one of the examples below to deploy your cluster. + + + ##### For a Single-Node, _Non-HA_ Deployment: + This example uses all default values. You can omit default parameters. + + ``` + oc process -f https://raw.githubusercontent.com/SolaceProducts/pubsubplus-openshift-quickstart/master/templates/eventbroker_singlenode_template.yaml \ + DEPLOYMENT_NAME=test-singlenode \ + BROKER_ADMIN_PASSWORD= | oc create -f - + # Wait until all pods are running and ready + oc get pods -w --show-labels + ``` + + ##### For an _HA_ Deployment: + In this example, we specify values for all parameters. + + The `BROKER_IMAGE_REGISTRY_URL` and `BROKER_IMAGE_TAG` parameters default to **solace/solace-pubsub-standard** and **latest**, respectively. + + ``` + oc process -f https://raw.githubusercontent.com/SolaceProducts/pubsubplus-openshift-quickstart/master/templates/eventbroker_ha_template.yaml \ + DEPLOYMENT_NAME=test-ha \ + BROKER_IMAGE_REGISTRY_URL= \ + BROKER_IMAGE_TAG= \ + BROKER_IMAGE_REGISTRY_PULLSECRET= + BROKER_STORAGE_SIZE=30Gi \ + BROKER_TLS_CERT_SECRET= # See notes above \ + BROKER_ADMIN_PASSWORD= | oc create -f - + # Wait until all pods are running and ready + oc get pods -w --show-labels + ``` - This deployment will create 10 EC2 instances: an *ansible-configserver* and three of each *openshift-etcd*, *openshift-master* and *openshift-nodes* servers.
- **Note:** only the "*ansible-configserver*" is exposed externally in a public subnet. To access the other servers that are in a private subnet, first [SSH into](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html ) the *ansible-configserver* instance then use that instance as a bastion host to SSH into the target server using it's private IP. For that we recommend enabling [SSH agent forwarding](https://developer.github.com/v3/guides/using-ssh-agent-forwarding/ ) on your local machine to avoid the insecure option of copying and storing private keys remotely on the *ansible-configserver*. - -* (Part II) Once you have deployed OpenShift using the AWS QuickStart you will have to perform additional steps to re-configure OpenShift to integrate fully with AWS. For full details, please refer to the RedHat OpenShift documentation for configuring OpenShift for AWS: - - * [OpenShift > Configuring for AWS](https://docs.openshift.com/container-platform/3.10/install_config/configuring_aws.html ) - - To help with that this quick start provides a script to automate the execution of the required steps: - - * Add the required AWS IAM policies to the ‘Setup Role’ (IAM) used by the RedHat QuickStart to deploy OpenShift to AWS - * Tag public subnets so when creating a public service suitable public subnets can be found - * Re-configure OpenShift Masters and OpenShift Nodes to make OpenShift aware of AWS deployment specifics - - SSH into the *ansible-configserver* then follow the commands. - -``` -## On the ansible-configserver server -# get the scripts -cd ~ -git clone https://github.com/SolaceProducts/pubsubplus-openshift-quickstart.git -cd pubsubplus-openshift-quickstart/scripts -# substitute your own parameters for the following exports -# You can get the stack names e.g.: from the CloudFormation page of the AWS services console, -# see the 'Overview' tab of the *nested* OpenShiftStack and VPC substacks. -# You can get the access keys from the AWS services console IAM > Users > Security credentials. -export NESTEDOPENSHIFTSTACK_STACKNAME=XXXXXXXXXXXXXXXXXXXXX -export VPC_STACKNAME=XXXXXXXXXXXXXXXXXXXXX -export AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXXX -export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXX -# run the config script -./configureAWSOpenShift.sh -``` - -The script will end with listing the private IP of the *openshift-master* servers, one of which you will need to SSH into for the next step. The command to access it is `ssh ` with SSH agent forwarding enabled. - -Also verify you have access and can login to the OpenShift console. You can get the URL from the CloudFormation page of the AWS services console, see the 'Outputs' tab of the *nested* OpenShiftStack substack. - -![alt text](/docs/images/GetOpenShiftURL.png "Getting to OpenShift console URL") - -

OpenShift deployment example with nested OpenShiftStack, VPCStack, tabs, keys and values

- - -### Step 2: Prepare your workspace - -**Important:** This and subsequent steps shall be executed on a host having the OpenShift client tools and able to reach your OpenShift cluster nodes - conveniently, this can be one of the *openshift-master* servers. - -> If using MiniShift, continue using your terminal. - -* SSH into your selected host and ensure you are logged in to OpenShift. If you used Step 1 to deploy OpenShift, the requested server URL is the same as the OpenShift console URL, the username is `admin` and the password is as specified in the CloudFormation template. Otherwise use the values specific to your environment. - -``` -## On an openshift-master server -oc whoami -# if not logged in yet -oc login -``` - -* The Solace OpenShift QuickStart project contains useful scripts to help you prepare an OpenShift project for event broker deployment. Retrieve the project in your selected host: - -``` -mkdir ~/workspace -cd ~/workspace -git clone https://github.com/SolaceProducts/pubsubplus-openshift-quickstart.git -cd pubsubplus-openshift-quickstart -``` - -### Step 3: (Optional: only execute for Deployment option 1) Install the Helm v2 client and server-side tools - -This will deploy Helm in a dedicated "tiller-project" project. Do not use this project for your deployments. - -- First download the Helm v2 client. If using Windows, get the [Helm executable](https://storage.googleapis.com/kubernetes-helm/helm-v2.16.0-windows-amd64.zip ) and put it in a directory on your path. -```bash - # Download Helm v2 client, latest version if needed - curl -sSL https://raw.githubusercontent.com/helm/helm/master/scripts/get | bash -``` - -- Use script to install the Helm v2 client and its Tiller server-side operator. -```bash - # Setup local Helm client - helm init --client-only - # Install Tiller server-side operator into a new "tiller-project" - oc new-project tiller-project - oc process -f https://github.com/openshift/origin/raw/master/examples/helm/tiller-template.yaml -p TILLER_NAMESPACE="tiller-project" -p HELM_VERSION=v2.16.0 | oc create -f - - oc rollout status deployment tiller - # also let Helm know where Tiller was deployed - export TILLER_NAMESPACE=tiller-project -``` - -### Step 4: Create a new OpenShift project to host the event broker deployment - -This will create a new project for deployments if needed or you can use your existing project except "helm" (the "helm" project has special privileges assigned which shall not be used for deployments). -``` -oc new-project solace-pubsub # adjust your project name as needed here and in subsequent commands -``` - -### Step 5: Optional: Load the event broker (Docker image) to your Docker Registry - -Deployment scripts will pull the Solace PubSub+ image from a [Docker registry](https://docs.Docker.com/registry/ ). There are several [options which registry to use](https://docs.openshift.com/container-platform/3.11/architecture/infrastructure_components/image_registry.html#overview ) depending on the requirements of your project, see some examples in (Part II) of this step. - -**Hint:** You may skip the rest of this step if using the free PubSub+ Standard Edition available from the [Solace public Docker Hub registry](https://hub.Docker.com/r/solace/solace-pubsub-standard/tags/ ). The Docker Registry URL to use will be `solace/solace-pubsub-standard:`. - -* **(Part I)** Download a copy of the event broker Docker image. - - Go to the Solace Developer Portal and download the Solace PubSub+ as a **Docker** image or obtain your version from Solace Support. - - * If using Solace PubSub+ Enterprise Evaluation Edition, go to the Solace Downloads page. For the image reference, copy and use the download URL in the Solace PubSub+ Enterprise Evaluation Edition Docker Images section. - - | PubSub+ Enterprise Evaluation Edition
Docker Image - | :---: | - | 90-day trial version of PubSub+ Enterprise | - | [Get URL of Evaluation Docker Image](http://dev.solace.com/downloads#eval ) | - - -* **(Part II)** Deploy the event broker Docker image to your Docker registry of choice - - Options include: - - * You can choose to use [OpenShift's Docker registry.](https://docs.openshift.com/container-platform/3.10/install_config/registry/deploy_registry_existing_clusters.html ). For MiniShift a simple option is to use the [Minishift Docker daemon](//docs.okd.io/latest/minishift/using/docker-daemon.html). - - * **(Optional / ECR)** You can utilize the AWS Elastic Container Registry (ECR) to host the event broker Docker image. For more information, refer to [Amazon Elastic Container Registry](https://aws.amazon.com/ecr/ ). If you are using ECR as your Docker registry then you must add the ECR login credentials (as an OpenShift secret) to your event broker HA deployment. This project contains a helper script to execute this step: - -```shell - # Required if using ECR for Docker registry - # Ensure to use aws cli v1, any sub version - cd ~/workspace/pubsubplus-openshift-quickstart/scripts - sudo su - aws configure # provide AWS config for root; provide your key ID, key and region. - ./addECRsecret.sh solace-pubsub # adjust your project name as needed -``` - - Here is an outline of the additional steps required if loading an image to ECR: - - * Copy the Solace Docker image location and download the image archive locally using the `wget ` command. - * Load the downloaded image to the local docker image repo using the `docker load -i ` command - * Go to your target ECR repository in the [AWS ECR Repositories console](https://console.aws.amazon.com/ecr ) and get the push commands information by clicking on the "View push commands" button. - * Start from the `docker tag` command to tag the image you just loaded. Use `docker images` to find the Solace Docker image just loaded. You may need to use - * Finally, use the `docker push` command to push the image. - * Exit from superuser to normal user - -![alt text](/docs/images/ECR-Registry.png "ECR Registry") - -
- -> Note: If using MiniShift a workaround is required: running the `addECRsecret.sh` will not be enough and requires manually loading the broker image to MiniShift's Docker. (1) Follow the steps to [configure your console to reuse the Minishift Docker daemon](//docs.okd.io/3.11/minishift/using/docker-daemon.html), then (2) use the `docker pull` command to pull the target image from ECR. Ensure to use the exact same image URI as will be passed to the broker deployment in next Step 6. Finally (3) use `eval $(minishift oc-env)` to ensure the [oc binary is added to your PATH](//docs.okd.io/3.11/minishift/openshift/openshift-client-binary.html#openshift-client-binary-overview). - - -For general additional information, refer to the [Using private registries](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#using-private-registries) section in the general Event Broker in Kubernetes Documentation. - -### Step 6-Option 1: Deploy the event broker using Helm - -Deploying using Helm provides more flexibility in terms of event broker deployment options, compared to those offered by the OpenShift templates provided by this project. - -More information is provided in the following documents: -* [Solace PubSub+ on Kubernetes Deployment Guide](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md) -* [Kubernetes Deployment Quick Start Guide](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/README.md) - -The deployment is using PubSub+ Software Event Broker Helm charts and customized by overriding [default chart parameters](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus#configuration). - -Consult the [Deployment Considerations](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#pubsub-event-broker-deployment-considerations) section of the general Event Broker in Kubernetes Documentation when planning your deployment. - -In particular, the `securityContext.enabled` parameter must be set to `false`, indicating not to use the provided pod security context but let OpenShift set it, using SecurityContextConstraints (SCC). By default OpenShift will use the "restricted" SCC. - -By default the publicly available [latest Docker image of PubSub+ Standard Edition](https://hub.Docker.com/r/solace/solace-pubsub-standard/tags/) will be used. [Load a different image into a registry](#step-5-optional-load-the-event-broker-docker-image-to-your-docker-registry) if required. If using a different image, add the `image.repository=,image.tag=` values to the `--set` commands below, comma-separated. - -Solace PubSub+ can be vertically scaled by deploying in one of the [client connection scaling tiers](//docs.solace.com/Configuring-and-Managing/SW-Broker-Specific-Config/Scaling-Tier-Resources.htm), controlled by the `solace.size` chart parameter. +## Validating the Deployment -Next an HA and a non-HA deployment examples are provided, using default parameters. For configuration options, refer to the [Solace PubSub+ Advanced Event Broker Helm Chart](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/tree/master/pubsubplus) reference. -After initiating a deployment with one of the commands below skip to the [Validating the Deployment](#validating-the-deployment) section. +If you encounter any issues with your deployment, refer to the [Kubernetes Troubleshooting Guide](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#troubleshooting) for help. Substitute any `kubectl` commands with `oc` commands. Before retrying a deployment, ensure to delete PVCs remaining from the unsuccessful deployment. Use the `oc get pvc` command to obtain a listing. -- **Important**: For each new project using Helm v2, grant admin access to the server-side Tiller service from the "tiller-project" and set the TILLER_NAMESPACE environment, which is used by the Helm client to locate where Tiller has been deployed. -```bash - oc policy add-role-to-user admin "system:serviceaccount:tiller-project:tiller" - # if not already exported, ensure Helm knows where Tiller was deployed - export TILLER_NAMESPACE=tiller-project +From the console, validate your deployment by running the following command: ``` - -> Ensure each command-line session has the TILLER_NAMESPACE environment variable properly set! - -HA deployment example: - -```bash -# One-time action: Add the PubSub+ charts to local Helm -helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts -# Initiate the HA deployment -helm install --name my-ha-release \ - --set securityContext.enabled=false,solace.redundancy=true,solace.usernameAdminPassword= \ - solacecharts/pubsubplus -# Check the notes printed on screen -# Wait until all pods running and ready and the active event broker pod label is "active=true" -oc get pods --show-labels -w +$ oc get statefulset,service,pods,pvc,pv --show-labels ``` - -Single-node, non-HA deployment example: - -```bash -# One-time action: Add the PubSub+ charts to local Helm -helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts -# Initiate the non-HA deployment -helm install --name my-nonha-release \ - --set securityContext.enabled=false,solace.redundancy=true,solace.usernameAdminPassword= \ - solacecharts/pubsubplus -# Check the notes printed on screen -# Wait until the event broker pod is running, ready and the pod label is "active=true" -oc get pods --show-labels -w +The output should look like the following: ``` +NAME READY AGE LABELS +statefulset.apps/my-release-pubsubplus 3/3 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Helm,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-2.4.0 -Note: an alternative to longer `--set` parameters is to define same parameter values in a YAML file: -```yaml -# Create example values file -echo " -securityContext - enabled: false -solace - redundancy: true, - usernameAdminPassword: " > deployment-values.yaml -# Use values file -helm install --name my-release \ - -v deployment-values.yaml \ - solacecharts/pubsubplus -``` - -### Step 6-Option 2: Deploy the event broker using the OpenShift templates included in this project - -This deployment is using OpenShift templates and don't require Helm. It assumes [Step 2](#step-2-prepare-your-workspace) and [optional step 5](#step-5-optional-load-the-event-broker-docker-image-to-your-docker-registry) have been completed. - -**Prerequisites:** -1. Determine your event broker disk space requirements. We recommend a minimum of 30 gigabytes of disk space. -2. Define a strong password for the 'admin' user of the event broker and then base64 encode the value. This value will be specified as a parameter when processing the event broker OpenShift template: -``` -echo -n 'strong@dminPw!' | base64 -``` -3. Switch to the templates directory: -``` -oc project solace-pubsub # adjust your project name as needed -cd ~/workspace/pubsubplus-openshift-quickstart/templates -``` +NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE LABELS +service/my-release-pubsubplus LoadBalancer 172.30.129.136 ac4917b2be7734df09a296f5da4dce38-1140440410.eu-central-1.elb.amazonaws.com 2222:31020/TCP,8080:30035/TCP,1943:30695/TCP,55555:30166/TCP,55003:30756/TCP,55443:32303/TCP,55556:31861/TCP,8008:31233/TCP,1443:32104/TCP,9000:30811/TCP,9443:30173/TCP,5672:31234/TCP,5671:31165/TCP,1883:32291/TCP,8883:32292/TCP,8000:32086/TCP,8443:31426/TCP 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Helm,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-2.4.0 +service/my-release-pubsubplus-discovery ClusterIP None 8080/TCP,8741/TCP,8300/TCP,8301/TCP,8302/TCP 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Helm,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-2.4.0 -**Deploy the event broker:** +NAME READY STATUS RESTARTS AGE LABELS +pod/my-release-pubsubplus-0 1/1 Running 0 23h active=true,app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-68d69ffb5,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-0 +pod/my-release-pubsubplus-1 1/1 Running 0 23h active=false,app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-68d69ffb5,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-1 +pod/my-release-pubsubplus-2 1/1 Running 0 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-68d69ffb5,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-2 -You can deploy the event broker in either a single-node or high-availability configuration. +NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE LABELS +persistentvolumeclaim/data-my-release-pubsubplus-0 Bound pvc-eb2c8a52-85d4-4bc2-a73d-884559a4e463 10Gi RWO gp2 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus +persistentvolumeclaim/data-my-release-pubsubplus-1 Bound pvc-ab428fa6-4786-4419-a814-a801a0860861 10Gi RWO gp2 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus +persistentvolumeclaim/data-my-release-pubsubplus-2 Bound pvc-3d77864d-3f90-42fe-939d-8a9324a62e20 10Gi RWO gp2 23h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus -Note: DOCKER_REGISTRY_URL and EVENTBROKER_IMAGE_TAG default to `solace/solace-pubsub-standard` and `latest`, EVENTBROKER_STORAGE_SIZE defaults to 30Gi. +NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE LABELS +persistentvolume/pvc-3d77864d-3f90-42fe-939d-8a9324a62e20 10Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-2 gp2 23h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1a +persistentvolume/pvc-ab428fa6-4786-4419-a814-a801a0860861 10Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-1 gp2 23h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1c +persistentvolume/pvc-eb2c8a52-85d4-4bc2-a73d-884559a4e463 10Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-0 gp2 23h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1b -The template by default provides for a small-footprint Solace PubSub+ deployment deployable in MiniShift. Adjust `export system_scaling_maxconnectioncount` in the template for higher scaling but ensure adequate resources are available to the pod(s). Refer to the [System Requirements in the Solace documentation](//docs.solace.com/Configuring-and-Managing/SW-Broker-Specific-Config/Scaling-Tier-Resources.htm). - -Also note that if a deployment failed and then deleted using `oc delete -f`, ensure to delete any remaining PVCs. Failing to do so and retrying using the same deployment name will result in an already used PV volume mounted and the pod(s) may not come up. - -* For a **Single-Node** configuration: - * Process the Solace 'Single Node' OpenShift template to deploy the event broker in a single-node configuration. Specify values for the DOCKER_REGISTRY_URL, EVENTBROKER_IMAGE_TAG, EVENTBROKER_STORAGE_SIZE, and EVENTBROKER_ADMIN_PASSWORD parameters: -``` -oc project solace-pubsub # adjust your project name as needed -cd ~/workspace/pubsubplus-openshift-quickstart/templates -oc process -f eventbroker_singlenode_template.yaml DEPLOYMENT_NAME=test-singlenode DOCKER_REGISTRY_URL= EVENTBROKER_IMAGE_TAG= EVENTBROKER_STORAGE_SIZE=30Gi EVENTBROKER_ADMIN_PASSWORD= | oc create -f - -# Wait until all pods running and ready -watch oc get statefulset,service,pods,pvc,pv -``` - -* For a **High-Availability** configuration: - * Process the Solace 'HA' OpenShift template to deploy the event broker in a high-availability configuration. Specify values for the DOCKER_REGISTRY_URL, EVENTBROKER_IMAGE_TAG, EVENTBROKER_STORAGE_SIZE, and EVENTBROKER_ADMIN_PASSWORD parameters: -``` -oc project solace-pubsub # adjust your project name as needed -cd ~/workspace/pubsubplus-openshift-quickstart/templates -oc process -f eventbroker_ha_template.yaml DEPLOYMENT_NAME=test-ha DOCKER_REGISTRY_URL= EVENTBROKER_IMAGE_TAG= EVENTBROKER_STORAGE_SIZE=30Gi EVENTBROKER_ADMIN_PASSWORD= | oc create -f - -# Wait until all pods running and ready -watch oc get statefulset,service,pods,pvc,pv -``` - -## Validating the Deployment - -If there are any issues with the deployment, refer to the [Kubernetes Troubleshooting Guide](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#troubleshooting) - substitute any `kubectl` commands with `oc` commands. Before retrying a deployment, ensure to delete PVCs remaining from the unsuccessful deployment - use `oc get pvc` to determine which ones. - -Now you can validate your deployment from the OpenShift client shell: - -``` -[ec2-user@ip-10-0-23-198 ~]$ oc get statefulset,service,pods,pvc,pv --show-labels -NAME DESIRED CURRENT AGE LABELS -statefulset.apps/my-release-pubsubplus 3 3 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Tiller,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-1.0.0 - -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE LABELS -service/my-release-pubsubplus LoadBalancer 172.30.44.13 a7d53a67e0d3911eaab100663456a67b-73396344.eu-central-1.elb.amazonaws.com 22:32084/TCP,8080:31060/TCP,943:30321/TCP,55555:32434/TCP,55003:32160/TCP,55443:30635/TCP,80:30142/TCP,443:30411/TCP,5672:30595/TCP,1883:30511/TCP,9000:32277/TCP 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Tiller,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-1.0.0 -service/my-release-pubsubplus-discovery ClusterIP None 8080/TCP,8741/TCP,8300/TCP,8301/TCP,8302/TCP 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/managed-by=Tiller,app.kubernetes.io/name=pubsubplus,helm.sh/chart=pubsubplus-1.0.0 - -NAME READY STATUS RESTARTS AGE LABELS -pod/my-release-pubsubplus-0 1/1 Running 0 2h active=true,app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-7b788f768b,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-0 -pod/my-release-pubsubplus-1 1/1 Running 0 2h active=false,app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-7b788f768b,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-1 -pod/my-release-pubsubplus-2 1/1 Running 0 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus,controller-revision-hash=my-release-pubsubplus-7b788f768b,statefulset.kubernetes.io/pod-name=my-release-pubsubplus-2 - -NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE LABELS -persistentvolumeclaim/data-my-release-pubsubplus-0 Bound pvc-7d596ac0-0d39-11ea-ab10-0663456a67be 30Gi RWO gp2 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus -persistentvolumeclaim/data-my-release-pubsubplus-1 Bound pvc-7d5c60e9-0d39-11ea-ab10-0663456a67be 30Gi RWO gp2 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus -persistentvolumeclaim/data-my-release-pubsubplus-2 Bound pvc-7d5f8838-0d39-11ea-ab10-0663456a67be 30Gi RWO gp2 2h app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus - -NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE LABELS -persistentvolume/pvc-58223d93-0b93-11ea-833a-0246f4c5a982 10Gi RWO Delete Bound openshift-infra/metrics-cassandra-1 gp2 2d failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1c -persistentvolume/pvc-7d596ac0-0d39-11ea-ab10-0663456a67be 30Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-0 gp2 2h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1c -persistentvolume/pvc-7d5c60e9-0d39-11ea-ab10-0663456a67be 30Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-1 gp2 2h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1a -persistentvolume/pvc-7d5f8838-0d39-11ea-ab10-0663456a67be 30Gi RWO Delete Bound solace-pubsub/data-my-release-pubsubplus-2 gp2 2h failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1b [ec2-user@ip-10-0-23-198 ~]$ [ec2-user@ip-10-0-23-198 ~]$ -[ec2-user@ip-10-0-23-198 ~]$ oc describe svc +[ec2-user@ip-10-0-23-198 ~]$ oc describe svc my-release-pubsubplus Name: my-release-pubsubplus Namespace: solace-pubsub Labels: app.kubernetes.io/instance=my-release - app.kubernetes.io/managed-by=Tiller + app.kubernetes.io/managed-by=Helm app.kubernetes.io/name=pubsubplus - helm.sh/chart=pubsubplus-1.0.0 -Annotations: + helm.sh/chart=pubsubplus-2.4.0 +Annotations: meta.helm.sh/release-name: my-release + meta.helm.sh/release-namespace: solace-pubsub Selector: active=true,app.kubernetes.io/instance=my-release,app.kubernetes.io/name=pubsubplus Type: LoadBalancer -IP: 172.30.44.13 -LoadBalancer Ingress: a7d53a67e0d3911eaab100663456a67b-73396344.eu-central-1.elb.amazonaws.com -Port: ssh 22/TCP +IP: 172.30.129.136 +LoadBalancer Ingress: ac4917b2be7734df09a296f5da4dce38-1140440410.eu-central-1.elb.amazonaws.com +Port: tcp-ssh 2222/TCP TargetPort: 2222/TCP -NodePort: ssh 32084/TCP -Endpoints: 10.131.0.17:2222 -Port: semp 8080/TCP +NodePort: tcp-ssh 31020/TCP +Endpoints: 10.129.2.14:2222 +Port: tcp-semp 8080/TCP TargetPort: 8080/TCP -NodePort: semp 31060/TCP -Endpoints: 10.131.0.17:8080 -Port: semptls 943/TCP -TargetPort: 60943/TCP -NodePort: semptls 30321/TCP -Endpoints: 10.131.0.17:60943 -Port: smf 55555/TCP +NodePort: tcp-semp 30035/TCP +Endpoints: 10.129.2.14:8080 +Port: tls-semp 1943/TCP +TargetPort: 1943/TCP +NodePort: tls-semp 30695/TCP +Endpoints: 10.129.2.14:1943 +Port: tcp-smf 55555/TCP TargetPort: 55555/TCP -NodePort: smf 32434/TCP -Endpoints: 10.131.0.17:55555 -Port: smfcomp 55003/TCP +NodePort: tcp-smf 30166/TCP +Endpoints: 10.129.2.14:55555 +Port: tcp-smfcomp 55003/TCP TargetPort: 55003/TCP -NodePort: smfcomp 32160/TCP -Endpoints: 10.131.0.17:55003 -Port: smftls 55443/TCP +NodePort: tcp-smfcomp 30756/TCP +Endpoints: 10.129.2.14:55003 +Port: tls-smf 55443/TCP TargetPort: 55443/TCP -NodePort: smftls 30635/TCP -Endpoints: 10.131.0.17:55443 -Port: web 80/TCP -TargetPort: 60080/TCP -NodePort: web 30142/TCP -Endpoints: 10.131.0.17:60080 -Port: webtls 443/TCP -TargetPort: 60443/TCP -NodePort: webtls 30411/TCP -Endpoints: 10.131.0.17:60443 -Port: amqp 5672/TCP +NodePort: tls-smf 32303/TCP +Endpoints: 10.129.2.14:55443 +Port: tcp-smfroute 55556/TCP +TargetPort: 55556/TCP +NodePort: tcp-smfroute 31861/TCP +Endpoints: 10.129.2.14:55556 +Port: tcp-web 8008/TCP +TargetPort: 8008/TCP +NodePort: tcp-web 31233/TCP +Endpoints: 10.129.2.14:8008 +Port: tls-web 1443/TCP +TargetPort: 1443/TCP +NodePort: tls-web 32104/TCP +Endpoints: 10.129.2.14:1443 +Port: tcp-rest 9000/TCP +TargetPort: 9000/TCP +NodePort: tcp-rest 30811/TCP +Endpoints: 10.129.2.14:9000 +Port: tls-rest 9443/TCP +TargetPort: 9443/TCP +NodePort: tls-rest 30173/TCP +Endpoints: 10.129.2.14:9443 +Port: tcp-amqp 5672/TCP TargetPort: 5672/TCP -NodePort: amqp 30595/TCP -Endpoints: 10.131.0.17:5672 -Port: mqtt 1883/TCP +NodePort: tcp-amqp 31234/TCP +Endpoints: 10.129.2.14:5672 +Port: tls-amqp 5671/TCP +TargetPort: 5671/TCP +NodePort: tls-amqp 31165/TCP +Endpoints: 10.129.2.14:5671 +Port: tcp-mqtt 1883/TCP TargetPort: 1883/TCP -NodePort: mqtt 30511/TCP -Endpoints: 10.131.0.17:1883 -Port: rest 9000/TCP -TargetPort: 9000/TCP -NodePort: rest 32277/TCP -Endpoints: 10.131.0.17:9000 +NodePort: tcp-mqtt 32291/TCP +Endpoints: 10.129.2.14:1883 +Port: tls-mqtt 8883/TCP +TargetPort: 8883/TCP +NodePort: tls-mqtt 32292/TCP +Endpoints: 10.129.2.14:8883 +Port: tcp-mqttweb 8000/TCP +TargetPort: 8000/TCP +NodePort: tcp-mqttweb 32086/TCP +Endpoints: 10.129.2.14:8000 +Port: tls-mqttweb 8443/TCP +TargetPort: 8443/TCP +NodePort: tls-mqttweb 31426/TCP +Endpoints: 10.129.2.14:8443 Session Affinity: None External Traffic Policy: Cluster Events: ``` -Find the **'LoadBalancer Ingress'** value listed in the service description above. This is the publicly accessible Solace Connection URI for messaging clients and management. In the example it is `a7d53a67e0d3911eaab100663456a67b-73396344.eu-central-1.elb.amazonaws.com`. +Find the **'LoadBalancer Ingress'** value listed in the service description above. This is the publicly accessible Solace Connection URI for messaging clients and management. In the example, it is `ac4917b2be7734df09a296f5da4dce38-1140440410.eu-central-1.elb.amazonaws.com`. -> Note: If using MiniShift an additional step is required to expose the service: `oc get --export svc my-release-pubsubplus`. This will return a service definition with nodePort port numbers for each message router service. Use these port numbers together with MiniShift's public IP address which can be obtained from the command `minishift ip`. +> **Note**: There is no external Load Balancer support with CodeReady Containers. Services are accessed through NodePorts instead. To access the brokers, use the NodePort port numbers together with the CodeReady Containers' public IP addresses, which can be obtained by running the `crc ip` command. -### Viewing Bringup logs +### Viewing the Bringup Logs To see the deployment events, navigate to: -* **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Events** +- **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Events** You can access the log stack for individual event broker pods from the OpenShift UI, by navigating to: -* **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Pods > ((name)-solace-(N)) > Logs** +- **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Pods > ((name)-solace-(N)) > Logs** + + Where **(N)** above is the ordinal of the HA role of the PubSub+ broker: + - 0: Primary event broker + - 1: Backup event broker + - 2: Monitor event broker ![alt text](/docs/images/Solace-Pod-Log-Stack.png "Event Broker Pod Log Stack") -Where (N) above is the ordinal of the Solace PubSub+: - * 0 - Primary event broker - * 1 - Backup event broker - * 2 - Monitor event broker -## Gaining Admin and SSH access to the event broker +## Gaining Admin and SSH Access to the Event Broker -The external management host URI will be the Solace Connection URI associated with the load balancer generated by the event broker OpenShift template. Access will go through the load balancer service as described in the introduction and will always point to the active event broker. The default port is 22 for CLI and 8080 for SEMP/SolAdmin. +To access the event brokers, use the Solace Connection URI associated with the load balancer generated by the OpenShift template. As described in the introduction, you access the brokers through the load balancer service, which always point to the active event broker. The default port is 2222 for CLI and 8080 for SEMP/[Solace PubSub+ Broker Manager](https://docs.solace.com/Solace-PubSub-Manager/PubSub-Manager-Overview.htm). -If you deployed OpenShift in AWS, then the Solace OpenShift QuickStart will have created an EC2 Load Balancer to front the event broker / OpenShift service. The Load Balancer public DNS name can be found in the AWS EC2 console under the 'Load Balancers' section. +If you deployed OpenShift in AWS, then the Solace OpenShift QuickStart will have created an EC2 Load Balancer to front the event broker / OpenShift service. The Load Balancer public DNS name can be found in the AWS EC2 console in the 'Load Balancers' section. -To launch Solace CLI or SSH into the individual event broker instances from the OpenShift CLI use: +To launch Solace CLI or SSH into the individual event broker instances from the OpenShift CLI, use the following commands: ``` # CLI access -oc exec -it XXX-XXX-pubsubplus-X cli # adjust pod name to your deployment +oc exec -it XXX-XXX-pubsubplus-X -- cli # adjust pod name to your deployment # shell access -oc exec -it XXX-XXX-pubsubplus-X bash # adjust pod name to your deployment +oc exec -it XXX-XXX-pubsubplus-X -- bash # adjust pod name to your deployment ``` -> Note for MiniShift: if using Windows you may get an error message: `Unable to use a TTY`. Install and preceed above commands with `winpty` until this is fixed in the MiniShift project. - +You can also gain access to the Solace CLI and container shell for individual event broker instances from the OpenShift UI. A web-based terminal emulator is available from the OpenShift UI. Navigate to an individual event broker Pod using the OpenShift UI: -You can also gain access to the Solace CLI and container shell for individual event broker instances from the OpenShift UI. A web-based terminal emulator is available from the OpenShift UI. Navigate to an individual event broker Pod using the OpenShift UI: +- **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Pods > ((name)-pubsubplus-(N)) > Terminal** -* **OpenShift UI > (Your Project) > Applications > Stateful Sets > ((name)-pubsubplus) > Pods > ((name)-pubsubplus-(N)) > Terminal** - -Once you have launched the terminal emulator to the event broker pod you may access the Solace CLI by executing the following command: +Once you have launched the terminal emulator to the event broker pod you can access the Solace CLI by executing the following command: ``` /usr/sw/loads/currentload/bin/cli -A @@ -500,39 +468,39 @@ Once you have launched the terminal emulator to the event broker pod you may acc ![alt text](/docs/images/Solace-Primary-Pod-Terminal-CLI.png "Event Broker CLI via OpenShift UI Terminal emulator") -See the [Solace Kubernetes Quickstart README](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#gaining-admin-access-to-the-event-broker ) for more details including admin and SSH access to the individual event brokers. +See the [Solace Kubernetes Quickstart README](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#gaining-admin-access-to-the-event-broker ) for more details, including admin and SSH access to the individual event brokers. -## Testing data access to the event broker +## Testing Data Access to the Event Broker -To test data traffic though the newly created event broker instance, visit the Solace Developer Portal and select your preferred programming language to [send and receive messages](http://dev.solace.com/get-started/send-receive-messages/ ). Under each language there is a Publish/Subscribe tutorial that will help you get started. +A simple option for testing data traffic though the newly created event broker instance is the [SDKPerf tool](https://docs.solace.com/SDKPerf/SDKPerf.htm). Another option to quickly check messaging is [Try Me!](https://docs.solace.com/Solace-PubSub-Manager/PubSub-Manager-Overview.htm#Test-Messages), which is integrated into the [Solace PubSub+ Broker Manager](https://docs.solace.com/Solace-PubSub-Manager/PubSub-Manager-Overview.htm). -Note: the Host will be the Solace Connection URI. It may be necessary to [open up external access to a port](//github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/master/docs/PubSubPlusK8SDeployment.md#modifying-or-upgrading-a-deployment ) used by the particular messaging API if it is not already exposed. +To try building a client, visit the Solace Developer Portal and select your preferred programming language to [send and receive messages](http://dev.solace.com/get-started/send-receive-messages/ ). For each language there are samples that will help you get started. -![alt text](/docs/images/solace_tutorial.png "getting started publish/subscribe") +>**Note**: The Host to be used is the Solace Connection URI. -
+## Deleting a Deployment +You can delete just the PubSub+ deployment, or tear down your entire AWS OpenShift Container Platform. -## Deleting a deployment +### Delete the PubSub+ Deployment -### Deleting the PubSub+ deployment +To delete the deployment or to start over from Step 3 in a clean state, do the following: -To delete the deployment or to start over from Step 6 in a clean state: +- If you used [Step 3, Option 1 (Helm)](#step-3-option-1-deploy-using-helm) to deploy, execute the following commands: -* If used (Option 1) Helm to deploy, execute: + ``` + helm list # lists the releases (deployments) + helm delete XXX-XXX # deletes instances related to your deployment - "my-release" in the example above + ``` -``` -helm list # will list the releases (deployments) -helm delete XXX-XXX # will delete instances related to your deployment - "my-release" in the example above -``` +- If you used [Step 3, Option 2 (OpenShift templates)](#step-3-option-2-deploy-using-openshift-templates) to deploy, run the following: -* If used (Option 2) OpenShift templates to deploy, use: + ``` + oc process -f DEPLOYMENT_NAME= | oc delete -f - + ``` -``` -cd ~/workspace/pubsubplus-openshift-quickstart/templates -oc process -f DEPLOYMENT_NAME= | oc delete -f - -``` +> **Note:** The commands above do not delete the dynamic Persistent Volumes (PVs) and related Persistent Volume Claims (PVCs). If you recreate the deployment with the same name and keep the original PVCs, the original volumes will be mounted with the existing configuration. -**Note:** Above will not delete dynamic Persistent Volumes (PVs) and related Persistent Volume Claims (PVCs). If recreating the deployment with same name and keeping the original PVCs, the original volumes get mounted with existing configuration. Deleting the PVCs will also delete the PVs: +To delete the PVCs (which also deletes the PVs), run the following commands: ``` # List PVCs @@ -541,50 +509,58 @@ oc get pvc oc delete pvc ``` -To remove the project or to start over from Step 4 in a clean state, delete the project using the OpenShift console or the command line. For more details, refer to the [OpenShift Projects](https://docs.openshift.com/enterprise/3.0/dev_guide/projects.html ) documentation. - +To remove the project or to start over in a clean state, delete the project using the OpenShift console or the command line: ``` oc delete project solace-pubsub # adjust your project name as needed ``` +For more details, refer to the [OpenShift Projects](https://docs.openshift.com/container-platform/latest/welcome/index.html) documentation. -### Deleting the AWS OpenShift Container Platform deployment +### Deleting the AWS OpenShift Container Platform Deployment -To delete your OpenShift Container Platform deployment that was set up at Step 1, first you need to detach the IAM policies from the ‘Setup Role’ (IAM) that were attached in (Part II) of Step 1. Then you also need to ensure to free up the allocated OpenShift entitlements from your subscription otherwise they will no longer be available for a subsequent deployment. - -Use this quick start's script to automate the execution of the required steps. SSH into the *ansible-configserver* then follow the commands: +To delete your OpenShift Container Platform deployment that was set up at [Step 1](#step-1-optional--aws-deploy-a-self-managed-openshift-container-platform-onto-aws), run the following commands: ``` -# assuming pubsubplus-openshift-quickstart/scripts are still available from Step 1 -cd ~/pubsubplus-openshift-quickstart/scripts -./prepareDeleteAWSOpenShift.sh +cd ~/workspace +./openshift-install help # Check options +./openshift-install destroy cluster ``` -Now the OpenShift stack delete can be initiated from the AWS CloudFormation console. +This will remove all resources of the deployment. -## Special topics -### Using NFS for persistent storage +## Experimental: Using NFS for Persistent Storage -The Solace PubSub+ supports NFS for persistent storage, with "root_squash" option configured on the NFS server. - -For an example deployment, specify the storage class from your NFS deployment ("nfs" in this example) in the `storage.useStorageClass` parameter and ensure `storage.slow` is set to `true`. +> **Important:** This is only provided for information only as NFS is currently not supported for PubSub+ production deployment. -The Helm (NFS Server Provisioner)[https://github.com/helm/charts/tree/master/stable/nfs-server-provisioner ] project is an example of a dynamic NFS server provisioner. Here are the steps to get going with it: +The NFS server shall be configured with "root_squash" option. -``` -# Create the required SCC -sudo oc apply -f https://raw.githubusercontent.com/kubernetes-incubator/external-storage/master/nfs/deploy/kubernetes/scc.yaml -# Install the NFS helm chart, which will create all dependencies -helm install stable/nfs-server-provisioner --name nfs-test --set persistence.enabled=true,persistence.size=100Gi -# Ensure the "nfs-provisioner" service account got created -oc get serviceaccounts -# Bind the SCC to the "nfs-provisioner" service account -sudo oc adm policy add-scc-to-user nfs-provisioner -z nfs-test-nfs-server-provisioner -# Ensure the NFS server pod is up and running -oc get pod nfs-test-nfs-server-provisioner-0 -``` +For an example deployment, specify the storage class from your NFS deployment ("nfs" in this example) in the `storage.useStorageClass` parameter and ensure `storage.slow` is set to `true`. -If using templates top deploy locate the volume mont for `softAdb` in the template and disable it by commenting it out: +The Helm (NFS Server Provisioner)[https://github.com/helm/charts/tree/master/stable/nfs-server-provisioner] project is an example of a dynamic NFS server provisioner. Here are the steps to get going with it: + + +1. Create the required SCC: + ``` + sudo oc apply -f https://raw.githubusercontent.com/kubernetes-incubator/external-storage/master/nfs/deploy/kubernetes/scc.yaml + ``` +2. Install the NFS helm chart, which will create all dependencies: + ``` + helm install stable/nfs-server-provisioner nfs-test --set persistence.enabled=true,persistence.size=100Gi + ``` +3. Ensure the "nfs-provisioner" service account got created: + ``` + oc get serviceaccounts + ``` +4. Bind the SCC to the "nfs-provisioner" service account: + ``` + sudo oc adm policy add-scc-to-user nfs-provisioner -z nfs-test-nfs-server-provisioner + ``` +5. Ensure the NFS server pod is up and running: + ``` + oc get pod nfs-test-nfs-server-provisioner-0 + ``` + +If you're using a template to deploy, locate the volume mount for `softAdb` in the template and disable it by commenting it out: ```yaml # only mount softAdb when not using NFS, comment it out otherwise @@ -597,6 +573,6 @@ If using templates top deploy locate the volume mont for `softAdb` in the templa For more information about Solace technology in general please visit these resources: -* The Solace Developer Portal website at: http://dev.solace.com -* Understanding [Solace technology.](http://dev.solace.com/tech/) -* Ask the [Solace community](http://dev.solace.com/community/). \ No newline at end of file +- The Solace Developer Portal website at: http://dev.solace.com +- Understanding [Solace technology.](http://dev.solace.com/tech/) +- Ask the [Solace community](http://dev.solace.com/community/). \ No newline at end of file diff --git a/docs/images/Solace-HA-StatefulSet-Pods.png b/docs/images/Solace-HA-StatefulSet-Pods.png index 09870e9cb8ac9e3b6dcf53ff9ff51ad5e5b1d494..30a081f2b9755e063094419b646676bb052fd899 100644 GIT binary patch literal 32922 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%0AEeJ8bUiKgC`PP)6hf>M{j-8^vF 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 literal 48004 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û>!st(LHvskn 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 wCmEl-xjy!Z3Gce(EC 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 U($j!53V~Q3wLem3dH#og0g&GbS^xk5 literal 56180 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 X-+{||a?j2oKdPa6Nu}`o-*^895_Mp} diff --git a/docs/images/Solace-Pod-Log-Stack.png b/docs/images/Solace-Pod-Log-Stack.png index c8de53e01cd749f2703d9e079ddead66b5b7a28d..1dab1b985e9f168b9c422c192fb143a5e169ac26 100644 GIT binary patch literal 85494 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�h>CL(NmfpA47*89Bml;Z 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 diff --git a/docs/images/network_diagram.jpg b/docs/images/network_diagram.jpg index 65d03747037951ffc0048d39406b26a711386704..c50ea88f897e0c18c49b8e45f09d5b455f92fb01 100644 GIT binary patch literal 98715 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%0ANWB)Ocba)afxhqiJEJ@QHO<|A->$KId z&+AIOKRN~I_s@Wz+fTa%oq&*nX#+4dHXljqUZl+q}fYqEoNq`@g?%(Q_AJ3hzv`_mO-1N%{>;NeHF&fE_B3>Sx z1D{G*h2ARnYD>ZgM&I=?w>G)Tym-aI|+Vp3bUZy zc~o^@bKQ(DovsfTs_4?)FJ&zTxhUQ}mJtuy+&lvZ+l{2n9RcIg4elB2gt_lUV2+Sk zCyz@FqR=SX%s0c7#Z#5HGwWps)rEr!FV#Wh^R3@9!HyNC2uaRatyC4+CT4~Z+{HjP zY+|G&IPn1);4diHbK5M;#%md(OTppua3Ck$uXAEx+(c z-7w0dA%(4$3m~zLw{x2wfsi>;&o(Pc&6KV#h7W>@cBJA2vE>E!J73DhZt%?I1iWm1 z6+uUcXcKT}PwvwQ{cn4;i9r3c7dq+P#oy`DGpoIxhSb&;$T^5@$eLvliJC;UWeJ~W zms2>LJ<+83`UJ1 zA%5|MaDO8*+pYpUrV7nc&)g@1BGue|@mvF#ma%9trjvsT?y{4KJa<($#W&x_MC&xJ0YtalJh5K1TD5N1PZ0@8rXqe-mJfz*CY5+m2Uc?uR;`Y>0>lrG8 z6}bu`9blEp^pM0hsii*QLMfkw}H4$|-Qt8=Sc zpi+W8>pAn=#yOq;OKB`x=|DuriNL5`9v9oY60oSmlC^U(S9(ndtyi@m zbKQbHr|wIFj<^HWR_{9i*7|LM5TWKsEl#6V4trUTjJ;q9t#3b5)S4*`8Ds@!NxIyC z3|e8C&3%MCzwLCv6=6Kaybclfr6hQVb~QFhIaVlVDs6BRgpqTX+hxAqIbTw1E2#1$ z(sPbj$Lf#AzaQ_VkRHIomZ@2tG9T0Ry?SFF6L(Ft|P zft^E(P2mYu=4Jokk1Fy>A)C)vFO?&E&p|b&-Cq}Zq0_AdolC6*nhB%Xh5B&WrtEw8+Kttxa+E2-lo>fKme8TtO>|djv&7XYg0MGj^4m}1y<_f1h z$TyvkRlH}6avUOs)<-o^jf;;sm;#E?pWe5{ZvcO%M$JytQOaQ~y0=pL0IC)A?az`0 zWGu4fGSjHH&im!{>1{O*;Jr3}R@IVIGbXSZ+hjVrnHLj9;mVOJf8QWZC(K`T9S3$` z>rLQJz`+kRkYM8B;2^6gJJ`i5VDVS*%&z|TE!@zvSl{|H z>LU)>u9{)*yrsjKl5oE!V#7{da}J+olv1QF)E4)xtSq{2t$m6BBN*j9nb?UK&W<{t zk8&G=?CR8E+Q|zwSx)B$dKE>d%}dNv@R|5~EPX*(21>hs8QRnJnYH44IruE* znL_Qn6OQEVq4b$6s$r+3GwVZ)8PAXJjNn)`;G`!54Nc=}-A7r4l|mUig-o`cMOGr8^5;=Jj~5Aor7i?u|a zu0=h_=Qw2wZ0k(a#vF5x^tL^!ORLOq&UY8FbBo6}4`j5>uTSq}?_pyJ6P|zJEt4VJ zCK5)ih=z(94IO12E%9sQmx7?OSk6;lS<>|SR-Sa*QlCX_-hk{k{JNH1;+#xqM6o6H z8&uB7ajb*pi&U!k(Xlbg_#oC77|hsnE$l{^*r|7Kx3{D{7j)jBeD;) z%_8p~#V-c7tLqefB;UVuFF3B~-qshT#3K*@Q!?-xtXBqoV7NWR%Y^Cuxz7y-%-GpYX3z&|_uPEHijNW@wpoMA68v%@iqmHTmBzbtt z{uiChYDxfbQ8xnswPj>ssoYeF!4c}_U{I5X2=GmR0>l|r!f^FtQP=&V)OZ$!xtjL- zILFoysr7eed(2y&;bnD-kO;$L?+>#2Q;4R?4cETcbD)4X!=xj)*tuYU1&N1 zo0ZPD3DBS|xf0}+>%q&x4Mv6mmcw#qy17NI$_dSQR}BO)J=6sy@zqOP1c_l%^2mdN zshHU<(tb673jhT%J(tDxWA?MJxdrD6LU$As zCLbj=csxrzIyvoC>1L8{?-{YL}Y;nI|x*{iwlZu$=?uOw!J>D>b`&W6T z)CuUSQ}O6NJJy4Kt&(DbiJAUkSnb%0QQzPU61c!gylwZW;F)o2e$vzsype9FX7^JDch?@QFu;M?R9`q2hJnO+j;1bg=E;UOc8|9Z z%5?x%`5p}yLZks>*#o!BJ;2Yx)Zs#+WswygN#OcwWrb%)- zi0BiVN&*Lch%&mm+G3Gift9QS)X|P^eEQkXt3~d!(nXLoosR}$f;>&jOeg)~0iC4?qh8#9{6Etpov#D;GMXF^P?s)2Xr&GL8P60-qIseCZ9vQI4 zKBd;bHt-HhT)OLn$X3Z>iSdTit+7&aq~vWeIlEz}hVq@^fDOE4yWxos_>KcWe11>f z)o*2l@;c`o>%1W{mgO3aB@Q#%N7DWb`Nop%A{TJ zX(qhsCD&2V?{ppy)OAPkPH4+Q9p`1?jZJQ!^+G*?_vJF?pA<3j&OlEBH!t^#1=n?A zrl;O?s(ye$dsh5J4Nk%Ca&qB*lyK1E^yqD4rOexV! zQEYv)P#akoBMsMe{cedMtCrA6Qrz2mWhFT}iaauAl$J+bJtYa%hpKSCJPE1I4!DApaaRe z4?lm^&;}mRkGng)IL0Xj?ZDKKqN4-Gy`ZDM+rgLt>@&>U^t``%;0xLmQHWkDvV ziMq;&(gU2Fg=v=0cfmza?;3qIH=4YXk{_LvfGqgGW+X@@P%vwQTm(&iYR<)9VZ?9c zG)ZecN5^uHR%UBDz{P#wza}<Mqh>I!`M2>y*fq5kFypFobw`M9?_8WG%XQY>j z{|_5MluZRR4m=im?$GrV7{4my1Fj&pUp{{3O>vv8JEBL_x!CB?HiStiPnrNtalqh* zJSWW0fJZxO5k#b#6-N0ABb1D*W00pctf1f-irzm+4XCG?nmbw;%ZFnzwX$+}U+F=J zUu{gpvOkX$ZHRUGceU8^LL_dgT+3a;?j|yx>xiX8;WuwKmP@nB)&+S!tVdDxW^!w+ zkOTWzub+%T0bQQP(cdG5m*`=CTr6<|=w7&JZtn64qO8uKteKBaP#IWD*dLgAJ_DGS z+!XHG&U&mvPsNwNRK&aa(Qae8%CP=(S>Au8YL=DD$RdWLX>(`g0rXO1O|a$NLPhLV zfj6A(PiH#Z^U=~Ct{#T@+n)un8=PmNHj{>!upgPYa-53nmsT*j$WV-s-+hkIKA*5B z-Sv<|)r{2!HYfwILxxP7Rd?o#^ql8Y53=ARqGGG=Ga=Z8sHV@MGRQU8V|^)>u>DEXLe_6ui^X97W6O^v;oE9GNF&D)&k2p#m@ zJn+0#H=DFTF^ynffC@OVIu12j6=qh3} z@$PAO<98cf=9_CnXLIvVnG`z81mB7asqZkt-`E#kVlwkJ%<%OvCjZyIitUFl+cofo zB)(RY!#=;+3#q*?a3gdf#OIt>SgqoMj~8%W@&1OH$tQXdsRxyELRW*t3}ts(GR-&y z-H29vqB%>82-cc4UUmiiFGf7wGUHVPIT8mac^XoT*<|D5ry!Oe zn37YSPj^RXJ25Uo^|gs((Qp7Ks~bE(V$=WT0kf}wbP%gn04=ty!@6?2#mLM3bZWkf zaB{$KiCOHMw zK{C482ce6dadW1u5h(g z-QwGDrn%cn=-Uz0FOlVXs}zn0B+3pV3}Pn#**X~d@R|)~!q)7a_k*52EhgH91Lj;# ze`c;IpsP3{$QmowEy+h>9JJa^l~htC9KBzX*vriVCHO>{W*gbscP@Kd+71g*`TGfg=mfA+_d-+8IX<0n9ezWrWuu ziQwU>#0q%Lbt?k95l4(2S>{rTH|R2vH^me@cCqoLP;G9&j=O4ao}_cAfsRG$D21v? z7mDP#c+chAxgD+ehIEqv*zS_?^m!}%#XE%(wJuX}#dtT37Q9~rjMdK=4sn~Eup@pQ z(|+`{$H#BoevK;%dxDYdu#MthTLTq|)r4tg#hSep&Sywda6oQ9g@X@$$ z(VKXzdWwaIX$Z~y!SYypzSSWTf>=S>Vw^ntMgK>M8chUaEzrTJP1e9{z%mhg=O8?* z)}~+okN2KY#iVxPjKAp(hGe+i7=k&Y#?%%1dLFy}e=Di~e<3{2gO_>(xy{-djqRn2^w zlSqmS?rCj6cf7D`u28ZmTg$wM49DY%^Wv$~Hsxr^(|ZU=aJ#r!= z2K1bVc42(VBHA}UTNbCW1qz`okf^I|X^o&Bt8hu28}EDIZsozqxqPUVn7RRL1CmEL zv1M5_BKKuZ)E~Xi73)?VrmhpXDFZq1LEjQZSz3(hpIhSY^tY|`rlmDS#Jy_OOt=8d z8!OQ_Y8F&X`#aKbHVR`HMZENP+uLN?6|&j{O!qyC<|?!dTr|i#KWPP<_R@y=VxFqa zB`UcJA06`}e0~XHbJx*xbo96` zp-E0&^uT%rLvP=G3i=>ZJRmi|<|6>F)ER_v>L_W~z<7GZQEUZ!_+N~07rbvB#9b!o z^S(AXj#e5$^jkmH9mJ~Qg1w&t`jfnh#&OC`g#y_llo()sUIv72eqhe{_y2Q`CXf(`hY=Y8MiiL#e+)kB`!dbdqE zM~^9F$mgg)HvND~q`cJZ5li~I)C4ai*V;F6c) zyFY`CTA;9#km*I%VIcnfbH;#;V}TAbpj~Z5 zJA!f!jJ%#$xSQ*LOhl(!->#jnOw8 zxeH^+Xs8n;WFy=ra(9_4_S%A7>OA8!@p5caw1nqKHcTjFb}d6M0iTsK=-*o_LgAAC ztZ5}i|Dvz>@a^&kyY7v(WW)98MP=S!pEkr$z)zz^fMu$2tTB=_P=_z4dy8@g5ikEc zwWCr!1fC?y%uOLGcu8&mczfyFLnuNM05Jm+J0SMH?0l%s-zTsFl`(V`NjLJ*++-qO$emiL1H5fTFlN$wgS;7%tC&hy<)nlOL1*(gv3 zBWobH_-(e^KmF=lV@82Xwcsgp8Z*a%I?&Az0g?0y!yE-K7&*LOUU^GO>?@P<hvV~s_ILL{+bUP zEc5n|8Xok}K422~c>P9(w5i$r%xAh>Eb%^&5cokVaQ_F*1wNYIz_FP>wN44Obx7IN&eO$O(0v?{(TuKM#vqNn-^@t*DC4IW0lmsACTlgq&kLuQaMs?z_GTO z)863<22LJX@0uz+7R_4uLyB#PpE%A>`yNUjuW+k`FzLW1TjyVwQo99tt@LIB$)Z_e zlFj=sy~=GX8;Z*RCv0I~r0`?sIkI(g=_U1!bJGsgewyq6`Uk*#1&}N_0g{<0K#TPD zJ4U+QT#dD!ij4LsNoS~P#sBZZ-WW{$l7tc>s;1q!FAjR*Ze<~#?Hnz*g!=Bf>?`fs zuWMHPpSW;QFo<@2CUfIbJYk;Uc6~bioYhb}ye2oRJ!Vs;H>0Mn?|nkEOz_T}Z0pMY z0dwKtkN79^PHUf7`}#YL(eO3qSe>qur!cOXUzvx$Q{&Z#K>+kEgaR-F7Q|q--mYqs ziM5?%yO$`rWpP$RHL6_kC|;Eo9)n~jgAXpGYge(&!ryhYt(|q_v8;BzU3ip49A6Oo zkMuDvxCNaAo=SHuQnPj*Cz#PjW;@W`p>+0YQkIdIOShh6&LuA0Y}nA*DlI%isD5iQ z8x0%hc#TTts1g}YtnsC^b7;X6Qac5x2BI+l9N^0yrl(4I`%v3B4KBDXZ-0;PVyJS$ ze4OoZE(5>ofhFXa3*P4JemPS#vd z)J5fqx+w6eX%R-;5MPL2H#H=urUn4H{1dx5(v>QbNR_#~D>6eZKZ({^houv{5qsNs z4+|Mhi-6ti-&LpoiSw;W;yCC!$C$v?B1nx!(hdBp*3gA8D3GPW1WE2amX)Bdx&DS= zX(b1C+=|n{x;|HjCw`ejv)AA`{C#rAycQv3+Sexe*?{6wBn)?j7M^--j8(9UU;obe z^uIybiWKgFT2=a^*`bzuOH;IH5P(u}Gl5u30>7Wy&zL!jDU~BaQYpaI)-m&`NlSt$ zl2ymSpY6JeC?_>$G)i(DFqnvN!_3j<$H)oyWdB!bN4N2Xy~mZKc4a?Cju{Mb5}|po zsHmQxX9DrayeFCd1$69K#pPX!JE9B<%z(`pzWJuZ2W;7!`FLdOa#@ zcHUpdp+DU>xOmq|2goum|AXp@W8`d^LP8!3MB`h?p5NELNVWpE~;IQ$Fm;ES(PHt)~uTN|-~-oujSHxU%SuzccPH z^2ZY7%r_y~I%QP2E;AEK;&WPiucP>w`Bejr7j8uB0YYSLbVo&HT-Alu$YvAOC%#H% zmim>YlNbnuL`+q1Km)a2@wbAn#=B|V`7E|Auton{V2k$enr7#I5q-zYM{jU3;=~?X znhn(+33ixO&Xn2C@K=kZgdbdtXUY@M_}m^o?sa8A3=3_yA=!U-k z&>bTcK;y8#v|!gB(Hl;Hh$c@Bdb-_+N)q<=_?i_+_s=;H7Pb2gyv1b9IPoo}NQabb zkH&^I;?P^Qi@VNF+RJmpQl@^8(&FY-{PS0Z1`I+@IKXh07Z7Hf$zK3F5@7yJqfqMf z^OusV>Fw(C?qp@^JdmZG3CJ`5d5l@YU2&y{P-J*|oB&k*3O{?GAc75%SbnwlgjE+fF^#II-TCD{-DN9%-a zzpknQep~Av*QQzCMq;fX*ly#~91a=axdW&jd+&DAqX1zd!rk4KrNOuD&@78uow0Ub zUuPW$!(8i`GJvZbV-2_+0_S^)#Bp2;3mwZA?X{u)OnltNTe@FQF8$ie2ppVgH0Rln zHuHgn3S-#6%G;{9CpNlLrMmS}%`S@R>)n9sgNgOnVCrmLF&cL*PtBk`6~jc&1Hd@u z#sO+8VF0~GQ~g0#UW*6r-!_n1BfiypfB-BnAipv z*|bQ8W9K-Kl(ThkY_QwOL$#G=vIlFdM>`!y6K<}2C=5LPpY1s|rk z!0y+Gq?Fcep+r~Xr3B7+-EDOkxe6QZSOol^FBUXlA$Lro z0Wp8~B;EA>(Mt=)%c(oRQo2gvlHby?NLsWZz6blsR+|msJKvwRdfqVE5fbe`C9x!c ze$M~ukiZ3$TmP$`{wP!^|Es3`@LKNYjRLS4+zl~1Qi1>3;jDrZgt~GfL7^3!VdJAQ zxN=70HcL(K(UpLY){su22GAW4%e`gq{~6W=TqiDB(y018M^#0KfcUrCUD06GU;w7j z7yq?=aX8pm>;#FAav$)<8f8mW`TS(n^z^=6A1w^&z;S@F0{{BDfcSu^5`g=`d@u^r z>#Afl&XGc<;a=zH3?o#_O zug`)hO9S2}!>PiA>ltBdOQ3_Ox#+YQojoW*LsByH`hu#?<@iVkJyC%5LNE2FwhQP; zs5?h8Y5w(UQUJwT)+w;e_I%d*N3dd(ehuGu-1BLVbtJ` zE&jq>WB(Y60^e*R{xytyReDjq71OmL>g>!)Iy|d*ucD$-(Y|}&(dW!{&+{a3??PjE z5Q>f3mZpgdlzhO63WWJmLjHJ)f6C1HKrwB*7+db$LerJ6#1z7&X{rc;X z>aRZ8#(jUeALjq4QAOv#h36BX(iK*h#=(MoUtzYGUO@8TKNkrQmQ;bKfCbM;10my| z)2`4tP@a%S(2*GnslYDnF!3t0|5&c<84*1TBnhjI{sqzpa{ls&v+zYlnzGLbQnK*W zFR4Ipj%uw&D1P(&y)j)tA0R;aX-M>SVs?ij%B z2D%yGb{hfvN7D0z++&>^$)QrLfVhE9%KK}ciE`9018QcuR9M*G-o0DNV|~zNP-!mr zi73C47~`5MJJaN?1JXIhfVHD4^v}&w(J}a%N*8bMF+Nr;?TSXSh#3g)UR9qA80frJ z)Bw(J5Z2${!&3d7?8*`k0KB0Qe^a_MV$C zSb+)w)TUbFNxt6EnZRe_|NYEYoX~RUgSr{`x zZ-VHl{Src)|5sQkg*X*T$lXEEQCBVHOTRR-BQlz@dFv|@Y2ydGl ztubjTQ60zP-Ixw*m?2d~G5Ysw@L#(%8bPZK2X~|S+aD#83EFezg^r0OSiO-*kjx;u z2={GHG{phA#c#UI060PYj~nps_Y4GCJ--i-McXE`2O=S`6qVv>KkHR$de13-*U+V~3}hw4^f{tPo=lRXw&2sPCX!Y|raF zQ0I6WgVv(2QRcA-{O|t|90c)Gq7!YqzW6}K+Vrh!S+PmW4dJB~FU4XXGKN-(y^{eC zLBRIlr3-S8y~Wvo^U!$pgba=^iRFF~vi0nCf9BHWJZ&)2zGc(PW=lYi`*^-0h(Oq` zGL4JV59_M*JwC|5>k3xSb%EBIpN0ng#p@Iwm+_={C*9kBUh2=ym7#{|!Oa%m>KUmU z!YufM5k(E#@5ENzIAEU!JnwJ;`TjdSG^SxYjQ3x74b#QE$&W=URBqB?fV-Sx{$GNj z7cITc<^CNE4HNgDTxeiK)YH}Rw+{pMMqD`C52k&3Mm|WKUzeO|PNRO9(ILgAA&@`R zm%#ZwV6x0Ujiltq@$bLG5E{-QPyU}MmqJ^|rBi?V+78CxYgW}bz2oaE*Q42@dx^rx<4lM@*=pn;GrD?TeYAl9Y{Yk{}) z?R+&M<$R|<6WTC;m4WTFFFtWtBM)Az(V2eK-QNoqC$k$!X#nEJ5?OCHV1{_Dyp!`W zF&tX5*$^H7vF|NVoCawCvnY#^aVsyOPw*&+=El2MWTP)#F1PoO_Z^#uAHF_>Ys{Xz z!|P!F?n_=lkJE*U{`=AmHD5U;4$8ghi+CN$r>Eh6I%KoDV+h=RU^R9gr~5I|0?EFd zE~{e{u7C~QE*pPE1auxCwbKY%&ps3RD$L?G=`fxr+RZxJdy0NbdSjGVyv2 zWEC6!NnaqNf>OC`%nPV}EKSQbP^6PUUXj}DjC3{D!7N{uB>IRj8RhAJHyps>^1EbN z9H80dWB#2%4$Z&rS9r!aZ7>G-EDaiN(h2^#5qSXK3^+-89X+>Vr>9mxryra1E-4!& z6oG7#i7*^2`2V%3vu7EHg5HN#sNM8-55^#pAy7oVr{gJE*bwXq0b-|(M>FOA;Am)3 zTkVBmSOu2#!#~qp4p2BYJ!jxXp5k+yX8a2R3Paf$-?REi>~_|=>$%woBxOZT$$`gl zoX6Pi5%urCGzoWOtGY?8Oh~eEYktzYu*0*LWMk3dlP5^(EDWzKB)m!<==P;s)$t%Xt(23KU@vh^AM5K9) zKkpJv55%LT@02-juU#BN#s0M+rVx`14l=LV+c%kH8QC(IchA2cn%a6zupA-Y|4s5? zk*ju@tv^g00|JC)wJDdD>t5wI3Da>n{E7LyMolKkQnz9n{6{^#Z8|d)E(L34^z%jm zrGZz7Cph#+Uf9E{P-K`M8-VB^2bH+hZY##0vlS?G=5UaBC)=H@ih5J}WrN`4h_1)O zGvna2}AiE-HaLg2(f>( zrp?F8570R4z9>k#3oGGHNVoKpT;!9*HkJ+`$MTVSdUEIUQS}*)SDB2f=`I(YZ$M6Z zxpcG9=fV*eG|yH`ySapPZe3?AYP?9JW$*mfG!DD-P+}%$*sodlJ$rG=A}F`)RaExO z56zq0Y~&Z~Z#D@MB8voLsZK)p>c8Go^Gyr)3shyFc=Z7Q&wni%KXgi&X!~ea_7? zN!N=F0XhC94Feh%7$6qnM+3d$PxHMx#@^%BQ%y!{u;gL62*>&VN9(OyZ67eee&r;4 zBWzV7{k42&v>yI}*ndu{2GuW(9e3>$LCK$$_DIEQk@(s^gnT@jq0NtPfRJRrfd^OZ zzZti!*0oKfA&mtTZ_B-gbk7<%UXqdbWhPFQ=5|M!(79#$!vt11y;*f?kgD&6L!z8s z2C?$^WQ(x!5VIeo5yC1TT2Fk(h>Za}5e6X-2zIVTi*)QL#APIco%q&xQ2A-dz@B2N18cJj!stIy!xPj6?teQ^OUmn z4hPt9XmyQrR<&34^Ky6wxtR9-Li0C)$`Cp(=8sRvb?;)DzG??Z=mk6!ZHr6GOS4&n z#b5NYcGKBM50Gl~YYv&}@6hG{WF79TzIfuL29bvK3R`QPdpT;>03 zPN#jzl0MO01#R;0>8DJ~KV@=&?g1ViK0+?*vNETa&yOukfvkg&_YEO|_HEDGgl=Q45nbak zf|yc&a>lHXx9{mXTRs0g+a@eJhuB9*13ca=olOlh zoVnYkv1(ily`}n`{pW%T=tAv`2G!Gq1&8URg>;~7*C{wW2f|~_pU$RO7QT#Bdb-Y6xwdcL?rPSV{g>xSfW(e z5q}NyN1|;%Gc}Eq%1nE=&lag+2&|$XduKqQK4jj$;DvjWMYcFwSgZ%+ptD98Z?Zn& zR?&st@l{TGBU4NLUzxHc>~$oc@7?BN+%BmkP#K7ys(`TEh|2cDs|bI0^yiSPCvON9 z4(F;B&~ig1yz=mrHDTn^cr$EROS^o1baUDIp-sKt1eJw=da{-+L*Q+GFYRQ_dJrb` z%Ii0f&n6+sVF9AUA>>8iTeqJh@=gl_B-%fU19DDQ*_J`NPn`89$WDpIG9>N@3hrbd zto?s|WCb=lx3+eMZgs4kuaBy~ z$4@`DoAK+D+c4F3kGaE1E#HgGr3kDO!GYWkguM~uh26;^s1sA^N5Fi_a#njLdnB26 zV0twqJyb@K`Iwz+ccIqI(3aTHxmBeO@HljUK*sWCCa>omGrV~uQ#HIE#kAEF)WuE! zc26#q60=e?cD!XTH~eyX;w&PNdKi>o_dbm%>3#@h@pPDF4olE{>)`2Q7c!siN6fjb z0#z6_V08Oi`@)YawLfkEQqyNq<9BI#*+exWq?bBh#wUdP(%F|n^ba&C*(YF%=T4hRvi1dd z1+K}$uy|WxoLmll`b_{>#2t<#B?TuTKmt=??Hc)cn!79?*}~IyuE7=rg@6kYw*@*s zvDbx5@^Q8acLHh?57tWD@DAJswez0p&}h0X$Wd_og8fEwyT^j5&3>B3$pNlqk8ivR!F}b9>iMSIUFO$2ie=5%N7hmKPE`7 zp#7%0yt&mGfW-aP?wLJE|N7NDxeGZ82EVJX_R5o2OS%KrvSAbEQB*_0!1!H(JjZdK z1^B!S6Z)0~8BKmbJb(hrUxH9aZ5^nhuD1hnwZI6W+X1MR`Z;$C78N5?ixqMEH2_Dp z4Mwho`-)hSB#_O;Pxi5rYotgh8+oYiq?do9El?1H!mXY{gjADM_?5E~uaf68Gt1mI zq&Enf2pINTy|{k$P=wNkuF_pIU#Ek547F-aHj7Ievnodt%9eK3#tuprh~utkj=Lti zJUN_|I1uzd+r{Rt+`Whv8#4?-uzS<-Q>IUc3Tn9>>b=JGbtZ*~Ya0@BSui9{$kY>?l&+2#6E;$~87hU%Yk`gYYucAkkfGqlh*`Gl>vF9!O z7ixpEf0W%U3)gyFku_{L++>YRZl3qLKkn zhI%+pRn7)biRNJ|^A^)6OaSB~4EMPz8lE<-I--1xJvQr);PsrKBDFYQAwaAuOzlOH z_cX&Q=?5eZe)zBaRXXdzsE5!O!~@C`ZYRaC4sW1Q+xm8S^qdeVb9ux7{0n-oH#1<% z%~rk`z&q%FRm={h+fT(Rf8pWr*-ifBBq3h$Ry&#O6JD&so(EN0fc}p=pf>H_Y5P&n^BxbCmzD?2X#yi~hVd{M;> zC+TRn-iyZa8q^<@pZxT_tbD&GPF?7`en{PgK8v6oc|7 z*J~GJr^e<*x*5kiA3*S*I=9puFtp^8JU17(5S@I)=O+_dO-VHvl(r<8f zEmn#x6nC6pe#Bs-;6#;Ed82vn^G&U`nV%pwV8ANjM^NU+xGR3H&i-79q5Q{yX!Lw5 zjBGGl)!WG6D%-a!#wZr%vmOdsYOwf96~X7w2xEiGws9>8$C6ux#UC7o@%4artZ7Om z5Zi;rJiv4SDw&Knh;6_5%i(abn&R%R#h63Yo8CY0x|lLyDr=k#b-$_DqxR!nQ))5K zyV9Gzf>w_GDjhFm%H?C- zC6{>@+aLK)i$~(PC~J!wK($+2rAQI65)nF>f+=ByeY1mgvxg;K-{b9R)!AfSX!uE~ z*!sI)(u)@@e4cL3mpIg+cEeY>@X*`4H`g(Gao!%yLnd>rKz66>`rT~gp~mztO>4AD zEpw#ftH>!?>+x4d3w085j_3v#Wd*)`lvx!(C~IAaO6FF}aTrfXgFq1TvdxB^;*Hvr zi*J@pA8nR&GJ(0J)NjZ}U>CVmL;&?v}9p~*DYj*c$`_MNEHEFJ=M>3TU zUL8aRf>Pb#nV!Aix2n_New&SdO)?(RJF4nXJc%{iI2putKQLsZjgb2o?u0#`nOLh{ zh>kg?su~g%9ysRam}F4;e=Z9yjIWL-30^ECN*Q;LFsWcV4fLneaf`Oz&V<2>IKHR` zE{fYa`*G^~*uqwX*_Pwf&^ga=&!H;^Z%af0*3By(RHkjAujh93zhY%xxoEjgdo^UR zGPivCKr*~df&&&qk%f&reKMLe?vWAkrOuMcM>qFF;-23K7h6--8_8yU-aOfuLPS$g zx7JL#7@gZriuhPdg+J3@D@MV{_q5x;*9D33S5yq%Ao7fqI&3K4T4vB4=80=_LT5Sf z(a^CTadC^nZrM-H{OTu74}-b1l|(ht9oSB7lg=J^RE<5q!EWYeA>NGVnm`eqD9*~w zkFghl6aCZ3-|r+zVv~j&t`U`~^Z3e`UF{afPwJm5LgQcaDphG%?-#iX+%+4=o=Mju zT|t20D0kN9#eKQPnZ=k{707JBl`y=+&XR&K<>q}%BJllEh55-Ja*|QyhpKvZ{^3no zSeq=OS$2`tC7^pIte$Q3{>F*$Itubi$SZ0gIc740Hppq%nRxh4WiGQ~Pk(=jpDa7r zS!x8MFeIvwf)f@y+HO)M2j9@cp=GH)FKW$FWQV6na59ZyhcdTJb0%-gO7~r<>y*X{ z7#wXFVvu)T=V*46a}`9WN4`P~iBam*e2t>SL*bc-MixZ*>5vy(BS?1L)eU;MWv9?a5VCf9s(T|c^z$WEai<>7UQoLzFBs=7>DwM!c*k%&H#blfpdOLnezU8Pt*pxWMMn|^Y;4+ zve^t9746GAOq%-`#!+so?8(V*N26?Jj4f_W=`p;vZ8}Wwbc=9kasK1w4 zleiMgIaKpxZ98ks<$28itoYMeSF3y)8{phbR*=e#2fTmUC%ivia?RUszQEj9Xy9qX6Ii*S6>fa?n7w@Gg-o1neCX3=I;V%A zZ}ZlqEa@0XF(@R|xe8p1TMKDDLX|KSK)>&^C3}#1h2>Ur106@8v|FgTN((_I4Wh5< z--D`%G3SoMawxVI&m`*PN%E@Jp+zn}Vt=4u4Co~f{pDY zTXlZ>DT#P=K8)P&bp54Ok+GZ_Jn-SC$?HLs0 z6m+d%`4VU)V{L7=HR;yXz=sammpbN$EAbaR<~WqqV{ySax|eyZ)Gvn6@p$f;9%m)H zxDRVT^V7?{UWhodQ<7*i5ajTE;2s}xTWoee=PiIfg1`kjN@j=HwbK?GL6F{$RYuuKIdK| zG_EghTj|T&7Jm}aZrn~&-}c(uVZ$3BHN|EFS)+2rXf6q4pCWlAs*_6_=J6Wkjdv&7 zaGNe|i)79mj8(a>2JigQtwR;$j2aj^O6kv3b;NzE!*!+19@}79dJ9RKBe>Ii&Q;go zcD6*zV~d4(puKs?)2XgwM3ta=+Z0>%M&kTo8Yglk3Q?K4|0^t6bv^Wy)|Z=fwv>O4 z0Oz?OneM9ermd3gnF;!oxo_^{(GgGl(jCoVnlFGvc*BZ|5^ zi^qkEr!Jn#{SF404C{@B?GM+U(}RXj^u1>u#zsXJ0LAH9wWW2J!F_I}jLd}}qo+|g zROpY6KZAU=Ls{;qYGxX!$O#-GcXjo?f5%pUQvohiDLE6yyrOsU16`#gSK~X zw9%A=D_VHgnpMwPk4- z$Cp%G9z(%YlhGR6K^K`rtq8~=NgJRN?Y?WYS|~>48Fnt4hPR`jS^PB;>sPqFuVXaN z6knfn-lCo*5hx<_QrC&3fI7agIv{MpXw85QCNPHHWyZdft(Cd&#gSxBh1)kJy*a{C zQ=REpTUnOs>Z8~+vxAAvkpIY{yqjS+Cf=qDy|bGzUgFdIRQuxRQlmRR+sZ}*QDsNR zrl%1~FEVrVo1&TYM<2Y^j!jawM>0OI&JJ}>XF727jXzeB8@d|dEH$13@$!2nBIuc} zR*}@fH*+86bQj2b{vz@87$L6~3wZo3yJF%5xG_ogWr<#I4~Y>dI-om_ym;!FGWfi? z`FTB0OTzG$Hj6zm%j#ROu?CRQ#qQN_=0K1DCvSyn#(3L<9N>i2BU@jmml-Xw7-=x0kQOH!Hr(_m9ZpxP491fye z+XX;QUZIfG&sChFWXn2_tGh2IY;c0{NDZ8>w)WBq%pR<73fV>#)N;2e&@r|XNaMSn{)0cAMMG2LwZ9m=da z>%=A7V#oSat!baqW4C!1*M3Us8^RTf znn);eW2=R|VLwv(rj2zZ58a2<8lkz~Q8obz8(F8!27QSIu zP`+&|L`kt5T^vjGX!4=svz7H$8rywGdXjCz;Cm>R_z9^~(|ecT^IEpKyr{lnI>gP` z#cF-@R#X^qy|;tdDFZ{-fGcSuIgf?Gd2~yJ{5Dkmw>!d?;R<3LUf1jfOi$z!aUN$M z^>!FR4!YI#Jt#gcao_`VdOzA1A2v4swVHv8UOr8k=0yzBO1s?J!%SAHmR-nuEAjky zRoleO%|yMuxnNz=*Qp`<1Xw~fy~#WZ?$p;;=DK$EI4w(&Azqs0uxjlZiuMMYxi^$w z{AAJPmU7PH)%DQ#-Bp>KD_sj?OZD3D=_W7t$W+Y>pK{2iQ^QpRE>LFQ&WI+)Axx~k z{DLU-k!NpepRbb}99R8ppemCpoI~)Q@DO-Ew-WxvA`Ldpdy1pb57SR}YD6bYt<*1- zu#ZGFFSc7Qij+Sx)$^K0r2U**Q$oU@Ms9Ye5YvjOA}YmGf`N%}?4m`YjppxK3q_f?8+mRSI;ODMR-zjhJbxSEWf%m+Oak$z8zLI2t(4rtEC2a4!UsN;XvE5 zUvByP5@EOJn>$_Oc$ogN{@YZK-0VN7_o^L>IS6})`P?f>WQ%G~t^i8y9CaMArpb(Nn;d#xXd1Y5F zq+@n*-1_EE%tocjiLqC+MA4U<WW#I&8>K;*xsJ-l{Jozln9^lNfBvV&r|YR@s0H_``fDlRk=3{0me zMCeE8DlLQG>!D+F-jUyJ*P7^@2}6_}xB_B0h`_SFm?d;~w?~!Mqve@I$YakUnRu-V zl`lVXOWtd6SYxx0_(Ui6s;?JENv|DRiinrrtlMFap>N`VuDG)u%O=u3@XtI{rOubx z;uIAVERvOv3$ORpnsgyLpvTHJx@Q6!wKl#o&J1HmS9kubPkP1o_xQ^V)2PGcwM^x$ zuk5b~=LPK2#TBm$i>UzxxH@FHAwi6alD7=cSeB*$q988F)4l(j=GOC}Gb7=r{~$pm z1rw-uj{T3Afovlbhi`qxr(C_qvToyZITHu%NmLSH&B)-nulu>Ibh15}hm2%Et_+>| z(81e%j}m^Z^%s(F_eQ0cxBAjiXKXC)vXD+_xR=SQnDc_=Lapucq+mU=l_#ydVx+jo zh6F7`k`a=2x=^D>DStctl-b#P-E!zb>cXV6rtNakal^jmjzCrjjaZCMPwRFFwWz&E z5;1Xa{?{sO4+w*Agd$?p(9rpn((6Oxacpi8xh>Vg5M-*K-tC_miPhnDS2925SFOJJ z1W^dqcna+MlOmpO@UT;}J4b?*+DxE7@hC`F%L`HXff1i2RLhMZvU#7T%*F^&C~NQ_ zLq0z#8PC&q*|rq4i&TyErY;SZt#$4=wKTz0J9WPx#vAf4o+-F^=3W{}u79|9 z{M{4@QMgK6?Ec)_JeXo}XiV*kEQP6N52IFuY)?!@$2Lsxf{LGgKJ#qIYqst`LnfYo zIew#mmiL*OA*6yjJVKp3agawfvq2w4ek37*$=WBO{hhWwnDA02WM`Xv#!2v!+iLZC=m(`%wLml|urmVx;j zQuh91vDHP3HgR>6BIrRNG1>smWZk^YPMPAC7fWW7H(`?17r#QCG=uD8gV^VfI6X}o z&I?TfWzAbMJss-4Q#T!-r+(;HT-fiPP!Jxo?K|N{>F@5D;H^jue-|pw-jUMl{?Otb zq?dK_Gc-wX1w#i*{35{jhCHDig|iIOT}kQFhxeSWu}F3{<{79i!9I}>wPe6sYb^l9 z(KFESzoBEygd$sNRV{qKnqhftyTD`-tRr{FV>q!iU1%paTM-JW8tLn9@(hF?{3r-w z1+PvI%sSMd>0%&)z6bzP>yuygrlU*jclZe{IcY|Py<~Rv7lGGq&jRN9RsXwpTOSk` zdE?9X25_0nc+*Z{bryJW@}>MiZF6E+Wk=|M)FQK3WRR7#{s=w1_P8||p)6STkp-J9 z77~yRt%k4MmsR$gD)%dFBB!^=GCaU36r#g(m`O{_U3Yc&kz1@as@Jac9iW&!?^gy5 zI-!NCCtnIQ1`i~+Ip`)K7{H4McaEpnwHqa0w09M;8%kM~V0owXcN1p(z&VNYpDWui znOf21q;5pB={dp26>_0A@+D`|raR~-_NGpb zsLLK-4e|DqcM6k(6MF20wak*#q_uKG&5%F)LgRw6d?|s@kuMBvEKm`7tshuxEgV}K z8qNo#93EJv%XD{qu2S-PZwVVG*PQN>zF&to$+P1Pr~Ckq4LdQ=ad}cI`m%jaEo%-q zuq{{!CJ-g5BSW>q#x`VB8I@Ac$*yYJr#1`FUC9ruEDK_+3oQ(Rzp z^$=LK;U+V!$7lILo%d7l^iXx6kb>mo(o*~ygn;u^ z{d$Sa*zaTTH1yt)8m+;rD$zu!H@GH8ohBa$l8oy-T)U|08L=M9elzunG^19qmy?zv zrUh50J(jo_GeT22klYSmudaD+rsc{c>(u4spt;`#f`2@{1mmAaA`w|R^y@b_d$(%O z;Ik?pq$Q-@WH-qNU}4GCTx@p=0BDqHz6rh9y&YV@};hd4tgTDT)4Zub8iC!$cZjzqM za*8Wp>az&7;~!t~bCcW(+!HQWx1>3DS_)p7cb^7&!pZRN@H-A)+RvxzsoeWrKS{*! zQv~JNX38sSS}~(;eHYS1sdhCTp-5l*6^Z^!q-JFU?gnA+Cfm3gE$4C{II!`Dh`|>-JHh@+>YxpHN|q@GchCBb69V$C#~J!;ljnZW)4FV2iwOCa zlfhT_tMUr76Sxv{vxC!^q-A`_CpWZi;1C>RAMVW%%*#9|;Mf&fKgY>^$aOW@)t_)! z(+vl2hO&=6`|A=V>}Q&~(+$R4)^*;Xp`eZ*jG6~7K~X&SRA*7Ejo4=qJ)g-H=a{EX zf?GG=9Bxz3+L{nD8n!#fBfUFzv%)E|W}qf;oZ$<*rO8!)oav@5(}xCaK)CzcLtA<7 z&A9sRmUIV(be+yOt&@$S+uX;RaWh6D@5j4q?t(EZ%{ukm-9Iq!+Wqo?y^MIPViMB3 z9nZW;WoxcGm9ALfnFNxd&IsPSn6p+@Uw8AxZI#bT423A*Vvo1Cwr+y$-RNxii;YCu zh_2U3_ihwWBs9*F=|4d;TZBJ*?7h%;5Tfeq(d_juyl$!y9{1cW9Hpy|UVzPQy8DqOt6F06SFsP~+p=cC~KKHJ?x4!lfyn6XR%>T%|2gl)W6IJbtAbYExn zZ41+&s6@7Bz$5Ll6T9P%yo(7Oiur~$I^n6OxMNdHwefwM(ymM;D3Tn6kcWi#+HY^> zU(=Gc|1m8o12|~@V#3ib>-#$eOT&#z3#PZJxc-N|!A2r22z8M54j21M+>}TeKZ#272$Nc9 z@^+qqW!9#Erhvr+0~70_>S*-1>XH}9n7XGKoTwo^NjLn=EW3&;9H z`~Hd9^-@%}T>oM0s=|Eu>(lp3B7IdjeJ>nB9W=kTg9y>=wDGd%MvP=X#?u;zj2Iu_ znEP)~W{cdb3=EzE%yyWt0EGsM1-!$mkrP%z}zg1&{rs$`@_{ zsQFjj1>)>RvS9sFbhNK&j+abR^Z;>T zK5z0GeBDZtcOepNc}pU?&sg#4{>?W3Oh?_G_be+Kv4n)qGpYi0_^;QJ0eN8NM*M!w zb7nOt6N@VHuR-38>M3ckrxP3gF=I#2A@+yu1e$X7`$ine@4E${p8nphkC!8(bo}7P zy94IC#9i-EeBT?CsYtTxDj}_z7K|Z^4WpqY*lxy|&d+0*;L8U1rkn)mFbC6u#(OB# zKPxMXDL1RD`xn-kQ;0R3_kt>v@&P;Ob(Bo{29FlL2*%K3^H%b8&jo<_`XbO5xeB1Q zBWVi1kRLyvdj5nsFx@YCiC_omMXoD}S28y;`wS@d?lhyjIk*c8>pG#Wl!?$I7U4aF zZ;Cn>fQ0f%8M1!Sz{J!A;CQM=;zE!8&9*+f%lzD1bTuY?jN2flWB;9W$3yOZ=^%7} zi^DJ|jwur6`>b7Hvz9!Ji)lLI0FJmvyPw|atnTRnLJr%R`-5a)Dym^b2A#Gn254vE0mO{jJLELtxu zuywGgIXeSb#1ff3_P8F8xA_^N;XIUmn;;F#rQV|?5cIJX$!(i|bxxBkmUwclW3t&v zKnnBVTN)V@i=rE|REE~$=TBvs7NWYHKRju(7q0TgdoHsWrGA+^N8q$8l+Va}a>bZA z`D|(7PSMZVHmk6V1$z$>!49XmvrJ(*J2xV;*TZJYII2jE9#M`Od#;A!`mUdxYD+Vw zo2`mR{%RKddrT^gM%um(5(na31xT=#`G2olTH-N?zQ*DGS^MlwVIy7NF?wW9c)yIQ zU$c`e_Eqxo6On*E#zZoENIuF?mbB53c3BO!YJ=)Z)FkzEZOzgA4f~F5?bWdD)n6@1 zG@^Cg2h-_CR;?-?)Gho}A@Q_<&1V=dkgjQ;b=|Iemlxpmtv<;(OUy;vwT8)3qtEmJT5Fe_mavWDB1{Tu;*VnP#f6QaY zzKcsp&|oxo+B%SPwjB<3SjDMG+?HMY1as&v7>`el!gH3k!PcREUg^j)e;zWu5&l+*D-KBkIhs#2X6%Bs4LHwRM>N6!x@Et9~;S?b3ks(n%I1jQPq8g)eqKOaAaBkA*SY|s6X9Rnnp;es!o1kVrc z&B}2O^(&z#Z7=VZHR;T^aUhC)&p5`+zXF`kOe+$%m`WvZZPsrV^gm)>SrwxDlI0J} zA02_#cPQ}?=&7?PttN_yhJ~x!TUzYr1oT`VJ}g3JBFO|@emUdL*=YNAH{Ijy0x^g) z$a^MCE0?-I-@K1Y9D)d&nVH3hy+_e4tFfEGSZa0^|G{HB+TdV%xjQD#w6tZWd5(JS zu=y*RDYv0OYcA`p_sqf8+(ii@eplU*d~QNWS0EDayhzGq&^2EzM1vO4)qP&?Ws^H5 zmM*06SxN|QRN4ye?^|tNK=5GE1?X{f?B4?12l5A_LmnA8nMn?KK1qKv@Pn#x*6WMt zXgg}P7zY2%ME64^?*QV?;&j5euE%LA$~<1X>>82YHUwLCD?bO${Aj;i7XHMNCv?H} zscBCN4YGkI1aZgC6MjGo!hnd+btP{kd9*%DoL%xY6-W>&d*U|TCRCKUzsfEHCPqea10Sm2+w)6t+Lv!reXMwa8E8DS z=6a;yaYq0$PKEo0d2RxApzRC`zs>GKWKh|hXzsM{p$i8tJ6P?@LCo8n(MzC;f@*2D zBY8?jkBe z8i&Uo@_-gvSl#-5CDQl$qtP0+nI!e|ILO;=-{2Vj0n*lvA9aBCF=jT&Na3)3y4pf{ z(Y_n~w)T=sK_4Go;rtj@0T{P*GT@<5T(8?C`L=1HkZy%E?Mm;)=rXd#hi1Cod~3&? zo0~gF4wutg;4<#=CUn_W$;~UOJ(xCLn!h6C-1f-rtF_2e=sn*W+DfB~=X=gg)bl5? zYsrMRCbSAsY_ELsd)n1W8h&_lZ(g>7BX)Hk>uaFQ=OaQcR7#48!4jLu=oZsXjG=c{ zR<%8+d*c07kX|7=F*{q)?bEnh4)>=o%uYa?XEXzWd#3e9;L71gkRW}546s{`Uo&4F}FW(^Y`1!>b2)|cHq83Q+N*#0VnHr zUvAFGl@gFABMDu9sal73P}6Wor?Q)>-{|L3$H#q#q7a@?+7F3pD=N9`Z`?@>*C-`r zsP}!kBA71I51*aYa_?)N$3DTCk2SgS7T0CSso4+p{jnU>#j9*;R1|*511uf1p)dj? z(o-;6>xnvX5w_o6`%ANY8&N3|8^YIjX^{qTp*Sb~r`17>x*A)yMk$Y%xGcJLhduT} zW6X3g6K09}VK0lHvllvOTW^gP+FxxO+681@ArX%FNPASiUrO*Rd^Q2BEgbX95a}@n zvMVO*-l6HxN@qH>APZ=L~awTKQa#_-&xLf+Gk?kB5mal zf@gKXmS^oG_BY+-zlK7Q9X`fJv$4-emHXt=(Dyk+{e(2Tnk=Qn%g8Fl?34ORmN1@? zS2`b%C&k~OTtT|;0-S$+rz+TW!C78h`6_1i!d&ULLUroqgNM;7p3cAL*%R zsb6siLfiOMF@~}jK)k$|{QUeN5a_!h^S}V($K@6xY#f}5PyYnCmd%sXkLl7GNH@El zbdFS;n?6EZ2M(;FV*5vFE05D)htgd;X1A<%m3?*6eDuO03SnU=xb08aHj;sIl1955 z>sY=EZhPWyr3#VBuECYT17yIHW+F@~I+r(UdZgMVsn?h;s+76^gWIdS-lcBHrnGei zaT5M}FA4{~w+xfLwI6a$dr3KoC^6N*W!}-JyPGQj4M;xJv5r-|+uFb3v{+_cvCy(8-Kafi( zPi4Uy78bTi_1PZ@%E-vLyHZXu{v(&>!H7pm#5+UCQf4@_8~Up%3$TazxY7m@kSouX ziXa~BeheUMc3JDE@acKNIgXuaHDeb*x)@1>>HC<(c8k)~z?IwU=O>FYfOws`x)=QA z+%cEF!^9-|{E}G|Hh*pOU0+8}$0i0W&U;`!`hFDfQHxVS$otw~3Sx0)u{c`tZ`lYQ zE!QNdvC_U+WX@Ypy7tXhnvS(LZ#>`;ChfC%YLm09q@y--VC04Gs5i;l zI#*RYf$#P#jB0hZ9%w_;sFYhp0AVIV>ua87bUZw~cmrmW0z*J-Z$B1DU@}>7v9$r@ zQT9eQvJYx65BcFJt_L&~BLnqSz;PHJ^6aNBwC z=qN_ee6+Aj@NpGANw<9$Z}ilb=zQ`e-BiQ1@>c1&Em757h?FL;(q1ZMy*2dwCstn92e6byN|H*4gEO3&I&_@38h*=85?ZcVx* zC0ey8-Sem2jM#Iw__I;AasHB7af=I}+9_rhmYx&eNB4C&S+xA{u*d|@u%F5)Ub$&V zmQgffb7vckNf1wrJP0qDbQJk}oy7^dy6@pnxA?QHZRp+$tnj%%ax*5c@uXF%)VU91ev{=+536!yzc8lzr{2jIk}5Tu2WsOy0stT%$3uACs>Iu zfPBE_U7cKB{Bcf>*!5TQ^^U1OJzLQxL!9xBV}SLV`Vv7#Z%KJ}b~J;U!SCv{aD>i5 z)YJEknB(-&U0Jn6zY!Y6f!GYGf4|`PWA}^d-uKrD{B0<$$M52fhbmkf-DPv4!^O7h z54#KA5j!-)euY{~eWm3GXi#6g*Zy#`en$Won zMhW&Nh{O>b?_q1;G7&T|Hr5}2;5S?Y4Wq2Eh)cffRyxG zKbg-9ApVY@Td8JFLt6@VH)&o!ki!+>ZGVtZ_PnuQ-*SywrPgv=)wu1T_KP-oD{tsS zqjXcH$4ONZLZr&K7kCLdJ+ofDty|)?KaQ?nEOCw(E>b0_B)9;E{XygZ$s)I_)QL?$ z&4g7+#Evl{U^yeZsK|clJpB;TtG-d$cEi8w^$7pb+5 z|1=g=e6z%@+;rMG(<8b3}VJ^Z}N0Fj#DYk%P&w0g;5SJ zun_Qg&`1TSPC5${>(*nuQu-=XXQ|2TbVtc(*VN~3a}6*h^lYm`0LF)aFbYu3j(ulb zoeq7&F2t(yepa43xFi%81%=6UrxBoIyWWrx{mm9GIs|`&+ZmfHUG1@_N|@0VwxI9d zu;%-6Ofe%Ic+|P(Qu5dQ1%P87RQqPX`csFjkIpl2QRexeU4v-h9F?B6%|Z@B-?9Td zzw7>&qFs8IPiuym{CDHo;`0smKuVa3k%9OomkTc4agK&7}E-o}((+mi! zB1H(H*y=XK6(Y_lav3rK_!OWz7NiL1y;rNFup4=wAk=?eP~DQnBT*6K->cHguRKz+ z!yxC6G-delNl6(9O5hRK15|P$WLaD`bDIFUxJ2NzdQWd3B`xji2~{i{I^M7_WcpVd zQl3bqz2VqY!Dgj+SF3=q@^vabc=XF=oT)^A&pkB>a z%lpgutU9BLxdSk-$IdMYBq#gYpIug4@m#GH@Ri|j>B z`KnF=_TXfU;<}@10Tik$8O$4|V?AYKG1<_?eZGA0jyQ7<H zTyX2V?a}a_{>s*_v0y=yiYIZA7*h_xICLCcpkkL;6k#bxzBpPyZ8^K^z2MRJBYpe! zZI$Z*H#Hrd*`FVxgzt7;(jEJ-QbwZE=E4n`Ib6o5oMRJ`^QMq|W)3$MIv^+({DsaVhDR5~*>n3{>?)56nYz|+xG81344^+2pE`xLDqNP2I* z>!F#wtAsT}-tBI-W+f%lW4*2US#7uF2H9z98_1vpoSzV6VM~2DiKQEw<;SYj!U7ki zg*Ksj6Yi`KZtUup;Sh+3P7rb|BRdS> zzxZtV&yBsD#7#h?8)H?+5A`1ZEQ8}KXvyi@^qDxS%)}w51K^SQA@g|_5h}z5f6vyA zjLfiV#9V1VjWYrLCi%NA{zrt8hIN=&?mxXcx(5`cSouQ$WPT~F`}1R%pt?N}an8J? zGb;lMZD8iHiD5`^qg#jn@g!OoTP^Ya1th3OEi{UMdko=Qx|&aOhA=W=c> zCM}uiGRO6B@zwopQznY;uwj)}=71Q%l6J8pn=Xo?d*(i2$>l7t@82k4s*LeUO|K-z%I;Gkc`gU8knw(XFzULPQ(tT}W3F@?TIB*I-GUtC2v+M2 z8IJ)-%La8Z&ir~$6-49ogkHBb^j0C=8*Bzk3dvU;rxB#X**_iHu?3<|Yl|xO9%WF? zk$G!dk=8I)L)R+T{FlpTmc73ZyiC^=e8yYe*zlXT3P%3<{{AH%`Cx3}t2v(IuSLF4 zc_Ss2dJ2@o+Rb*B#VDVbr;zPDZPH2NT_HuLHq&lj2+6tNyF9;3{7;KAoRND6dL;@> ztcpF7_Wo7v@7dP05N{v)0K2-)pY8Yf@Cit*f4arF>7Kk|(i{NeWi|>#Y5E97?IvQ+ zy)EwXYPtF~jRRHzxU-}h>{b+)F=erq7H3=GhQs&RGlk%T>*)$t-DvAqz+RZbkDKzK zeTTFePs-)#q>ED-FVdtUt>~=GRXk{hSA`%R8%_Sr##sF_DZ8J$FdC7#u^`kZf3`E( z>X2n}>iQ!o`?dYL404PsTa5llzS_~iBP*GmehXv&mklG{fFGp*Wmoe4_&u09($2n5 ze6p=P4%}|>Z7N*gtF`WlQcIbrY<08#?Iq!PUq zU>ks5E4l_agHNmV57pGtHPegwTt2PZ(+7*(y+vI1ATVY1BIF=g8LpBr+16ei+#ubA zRPZ+;n8V6EGv#zZ=W`vQ2l7!Qe3Z#4F!5c&jBh~sbf~*>TJ^AY42J_E*AiXYwbi(4 zgomAy&X*+-y5acvaLXoq`TTyL%DrxA^%ceiYZu`n90@+7crYEDl*VIpRCSCHOO%a$pN?=-00=&JLHfP=pedmR-JiiDr$X)t3dmmpmuPk02|_6!J7) zZe03vWfq;IR;bu`Sg*I8Ht=-sqTX&>6;ke#n0FKx%5_3172@l)BIbAY2IK!g;-j}F zq{%vgaM9t?;4$8E7+1()lS5)2mb7A>)RuMqUOj*c>&9P{pSUTT&Y_0TpHvJNF<}^2 zLpwkIaEx1eP)PCejwm89i0gL6{{G&GRo>OM1Q^f=6o14wnVE(slOO#l*27cE@2zP8 z@8;`_W^`c?jo^MHmAhQx_af|FMVBHN^LGOhOf;zxH;wApi89Cy{~F-)M(gdZ=pXOzB{Y7wJI-9k1>cV zq>vK=`Loe|<>rInyTFpsd+!|~*jp!e#vF?K*>UX+hfuAY0JYrNk5JTy-YQNG_*AB& zs9X)BXsUt}{5j?(DoVgVJiL-643ZX^f0;U5|o zM=QCAKsIsMo$SN)oT*Ia{ssbvhx3PRVwo_T%08FU4xhrLY%8&uF?V-y*z}j0%eW1g z7K@hcV)OoDDeg}SPzx7saH!Wv*k(Y3IBXW2^ldx(SZlV`Y))ai(zzLNv1HD~s!}nf z=En5S?$Mz5JX#rj(AjmgxLhkaqrtWA!;k4E3Q&%_Y@iTOvLKWAp2tbk8%xz+?L6iS zA!s~ikogcUSwkxu%Dre@lhDk(nVPb1u>_x=9tyrAJY3FZ-%&9|9Gzk$?Ok!quPnVkDE5b$LC0IB7l zeVfW*A^kPq%ktKT-ejZfoGzdBxU2{QC~wXjEQH(-VEQH)_PcwaYkPcqC><0aiHBE16rj_j!>-X^W-zBf57f<^&$~0_xT*PGZI=qNRzxK&MrzBcAJ|z8 z;A;(Z%w;m=(mRA3w4;+XrQp@nAY{0frn}!8=Z&_lWfFE7PNt_QdCB_|Z=6URA9F+= z@6>dh2?aga0qwlsr?OvH>;i2^N~`W}Ng@k{pNVI+B;wEYfD?i8&Al8QvuTrfe^iR# z9`g0AqvTomNXm7+;ERc=m{y?Byj47?r1c%cKmm)xcE4tFE?Dk^M!k<;$KBEhdo3Sk z@P@sNfARiU9V^;kX%cTF!Q(Gvm5zDC?MAB&Gnx4|-D06ZgYgNBCg&Y%q|BrSAq5KJ zIQQN`lkUvvk1~dV5w4%SooCw5q4%c!**pf9gpxEwe)*svl>8fk&O0SJa+{Q&<&iJw7Gqs zdHJ5xp=>%%-_m5zucmi;iStKZaWj(YsjG`G%MUecdV*i)W*>Xz4p-rE=->0|r}Kp0 zO8YcYpsW!Jj^P(!Wn-<#)FS(nH8{k4L)H6WSDLegltRcJ4T7 zm$3C5*A)K94W@yS{ga*$7SL800lRL9sq&0BJFvm!#0qGa!qW?23=a`Nh}&l=IT6O#5OJB zS=5_mNCCB-#@aq`+(!jksFawh@mn#gyx4=tw4i;naBtHbbUy?d7LMz{Hd(g$i(f(a z9XR>*7tETaf_YVWwd$D+N@#Vs!=_1+ei?t}PdW2{T#~pHcNb>aPTp|A-T#RBHx>D3kw9@h3NscNySb+ zdARLcqrKlt`8%5oy#OYHX|1~}I!f3Ncc@Dw*({NeKpv$qZI9n(;SVex?{iCKeu@GL zwEN@aDBBS8!7Wv!g~E60+uoa$S*@X)T{|DrPI}_w|McL-S2^{{UB52sC-Z`<1V0ok zG0gdxRMLMj-;1vzFz+0{G~6ZD5b14daI>iBk04(O(IXc?HF|st-|wuXSnF8!=Zyu6 zAAGz>3*j0|YLqzWp=GBt9&=WDFkXPyCi7GOS&dvZz(Lqpr-kqi_miePx=4jsj5ByK zKF`;6PO+nYEUHWYljK?mu&~g<5DJg;Z0WFoXuxcS(j!SAP4SRZD&0K6*G@P4joAb$ zYBTZ3$)nHC&KUDex`QV7(gRM$*&D?X}H^z2pr5=4E_RvSwV} znAO<*nWZ0QTl1&O-R#e7`lHExCPGyhsutXP1@ec@a6A zszF*w^Tmy#{Ul$&qy!=j3iH#NV+)lf>2cZ2Nl`e5ZkoVEe3Cf;%k%Q$-mkNH6M;cg z9Rsy6OBicRkh4kkI}j-?JKk#d^r*LGmxym4U`$iqOIuZz0gV?JN8tyb0#(pe_Dcvd zn_`uY$qI~*nW2FDo(;B*J0q0Ux_-jv^(wV49Q_d)8g7JAP z{Co=o!F4|)Cew0!4O!MG@VFn|X%?SUUd~BxC|7Sm@mVtbB5V?@aT4fx`3+Y>MZ*FD zp4=BI5ld=^m2LP?2^SRhk~F^t8t?$nG- z@I(a8nokPi?7kX9e_=CTmz%}H5I@b4u90XoNk`djGFlDY_;(WD6%9r3NMA+d<>4j!R~0c6 zDEaw@3Enrh>yNKSKAssXm(&$=Dke!jfH{~|irAl+V1q&x^@*v))LKxDmjnoaM)4Qh zu}VNVdR0zQP7DyPodB4war3<{k9NlmQ9dFbS2ol@kG@<-J62VAW8WZ>8o%biZQc=2 zoLyY{-h`cRPBWx?n5cz|)GZMC`{dbvHX(q**45w>yjtYhA4dw-lg-jI|2IAqluk)n+QES#s1Q}%Bj5e4 z*F?*h9&gxdd{juyB7@q-JP5}?FK_x*j13;Se~B19Um7AXX5%mV3`tEv5>t3-Sm*Iz zT%(28-Mo#O0@X(y-t7OuLuewn1tJ{vMsB{^8Pe>e3C1}ZS`LNpug|SIYb4nP2-sO% zI7GiDyeJN>%x10z-icXgY#RRQi zBa8@8=c?53n%hw3tfPJ~4v!<#{E9dDuuLh)WobS>JZ+>k9PJkn<<|@F5|2+w7QSD* zWlfRtc|K(oEtmEEq^iP;bcauCxcBEDlX zIrl%M71~LHtO)tt>@MvH1*h!}%VrEsAKnM5CcE9|IWe9ocHf~yC1vMzMCNRYsmqLM z$)6?k_7KHRSHVU;9%{m;rg*-|btC{L%jg|k+`@K88_0{5OW=OdgNf*f^Q93j?rM-9 z?@hBOu>?K$Ztv}un+R8O>r|;2s^xkM%BG_#923s?UeP}Pb=|G>i$O`fpJa|`oV}@~ zHT@H7f7zNy(BP+@J$TO{*AmI$*{w`zqr_wZ_kj+Uxo=|K(;oqKKEsOAFwn4@iRBIl z=(?6{WTHgpr#G%%`)cdOfnJQ?w$YHBhFWr;@&3(v7)XEEaKYWw=Ryt&f1Dn#DVBQO-$N%jV~ia1b)3r$#)1LLdWMq^fBtB!(c56a zgi10U?tBG3bot0gwE4UdR5zxjO;*|@bx<*bqcUQz)~AMa9iGO;30vfJ;zKF=?K~&e zJdcT&IZVP^Nl0zGoa6hb${peLL4!?B8P+Q{3)&A?zM!VgUjBD&I?+iZQ{(k@XN%>} zSBAkPsFSyQaxH#z`HfdIcJqGAj?R02_6Rp279VZ2Qz`C??6VHF$!1OoX$^kgM*cWD zn>rUbX|Zp&EWewv2YOM->xi@`ndy`nA9r1^oaOOH{cJHlQy}5n8}Z;h5=|4)yu!b$ zHWy*tUjQgI=_7$ox17=p6@y~PDCyFVu(Qr19yA3ALd&iXHU+(3G+sKlT-MTo@$eF| z!Gg;Ch-%sgeKR^k^2yt_GXePAvs7%b#$b82%`|{y%a%WUgHZNvR{>c=g#0eAd2S82 za_#GHs#_IR^{<z2Qz-IX9FD^f;88((F2?%a!KpbT<(HhTMoab)+2OB!~6BD^C0G`WJ$?=aJag;X)*Oy z(k@T5d~hatr87$X*?$IR>e{f;FF)#1&8w@sq$i!&rKIH5b zyY4I-VL=sqyE|Pg3QCmL^%n&w(qkh4g+RD!yt7- z8`+9!ZSLjU4b95dEqoBHJ6NsfvoFlA=L0~y?WE~`ST$p+JI9H&g6%X?qeR7J2!?Nh zAyye{e$1&n`=J;kj9HPxBBxmBgL+qMX^tN+70p=$-`OpZi5vO>D%ltynblXvj5e8$ zGGy2C?7IY~tn$b68E zOSUnOJriJ*TS^49{dO3uJ{_blt<-^9GS+SN-tb+r7QdA;UvFK2GT8WQki+Bh0hghd z7|p|EZN2K}7v%CXe?OeeQdsjU48NN5~r$Nd6QPBNLm0#^?S>W*pslEMfk01%+x zefX%Otw(0+KqPSl zs;;&&WRfv5;NUR-;-3M(Bt5KlcszEGY_Mk_>iP8+fcD%ZJ0RN@YnkJ2bx~C^$I55J z_mf8I0cW1*^o}S+6*o1E2-Mq^beVyE$LD1?!sz;at<<$jyP*I5Ni~K^P8^Tk9a+UfzvkS|yY^%bJD0FLo zU^vK1Y@s^=2=L-m`)|#xotRB??>)%*F4$wqKR#xB)3F>?oh5OhCH-unm%rgr^8WJe zbxp{ij=sxVGVqNaA-am(i0p3@6mT;;b@Tue@Er?w!cqIJW|OqlYS#>%qOYg>@osXJ zdeGG~Y{|QBf%`37m2*vd{x1ut^+PmF{T$`ILFA4<%UB-P4;}BWQ@E;OgF|XmS={&U z-tDbHB((Q$RgLmoKEx&mIUJbpPuU_Vs7wGLIgSF4vqJ|~JK;-^pzk3jYd6jePxh@( zt|z7Yx7^TEmtuhCUUqfW5AwrhmgdsQxQ|%fLfkO_RUJ{Pat3UCcA6#;qA(e z_0BY-{{Asmsg}r5;1(QCddXAlN$Z39x_75H)puPH^Mm#q#_!rx?g6DNV@moJ_c<0q z#|5yHveR|~29ZBN+(g;V$igBHV1|ELM5u~q7of{CLZ4C9Pv9rIt$=j4TgzA&51U)e z6Lq1>I~8sG#D)uB{Mj&ixV$PwqrJR3u(pJi-~C>~qJl>D^gbG*fknwR!3rt`ggw19 zj5c(=5;RrP#TD4%-~J-BO*(atvW6A+nGCz}I&4yo+M$}D`3wO5RlQO^7cFHfmaeMi z<;7WZ(#?iSI>*i@RDVg{jrR!^>Z{&h;ewj2Y}ozIeu4G(FPC)fg2Me+yh3qkl|vq!vWe_$q4RCCBp$N+~>TRi>;Kl)+`OpXtE-h z*F<~~PLSebZ$BW}4zAX!X( zoX2aS@exxEU?wM>#uOFx#ww9KSW&Xv$|o|qEe{38kR(=5X!DAeLN8qoZ<_^HNor>E z3O90~W+xjp5stTYN~XU;E&ue?iI^BeAJufjifAQ{C-H{qEVrSOqEpD}L6mq15hDH9AIlJZm3M zH(;8QP4ah);LKcugNz}%27zh%Qr!WUE$*`I!J*rzVBO4D9&s2Pje4cXwdDW>h@zJQ zv|%~r6;kEVC2Wq)dpsO9zu|TF^Jk46p>_n*T@uuMP53sPP4i`m6o>&Lq)s= z16slSP-Dta^Fzi~a-jta0jCH@^43-_pX=&%RF>w$-|+l+;g#28TK`aZCJP@_*UK5>ympK3&VO`Kn;oD6KJ&L>yT+G( zBag(a?b}y zqz69%kI`nGLR;~if3Z<1Kt5y>Y(_KSFYDU*%6;=v1ZoBoZ!jLd@G0W`-Ds7y7P=vj z6PoQo5+$u}_P+~4p`l&Fvr3pPB;keVioeZEq@Fl8#C`Hr|C3DTl zN{;p9l!5`Fn$Q6+z#mQc&=q1|Lgq^AndH?oVh{?v#*X$<94NkQmpqUrNSBtGTf;q& zh`eT~o|tzF-AjEskF7@n(;AxxTJQr0EZ=6#7Vj=bkRm1HZtgWZ-q(aN(V5@VA;puQajmafU&8dU|aFu%9f4Z#JWDl#2` z9a1y}f55SqUzOP;yedhKGCbvE)Z|l4M2Ei3=}MeziNsSMC8I`ubb9?YqOs+k=_RIeHf`pM?@{wU})7ZD#>0GWB+J&wa~x^MJE=wjb!o zj?|{E+ec8-Ux$y!3hx;0!1Dx#P^mnV+emAXS;iE_j=fT;3S!N;wdAYI<&59%0!6Ya zp74ugvl00P-k~X>9$~A(0JC$b$h;_TLP= zU@N$;8?jbAL=%16yglU!wU3*!FjomAi3vOv=&uk9#?6dTGByKWu}kbJy`V`f?8svj zR(@{QN;bjJYTk#e=+D4A$G%V!OjA075ix>an{(r;wi8yBm%OUKT}6$W^&XI>0@Sj~ zuPjtFy5br()1*0=HK=&~2ltVfH(%3k9dbf&e4q+F%hzt>Lu*TzLt`6jU^+|8?~aE= zQ3xk5i%}lWSg}vS?wno!CiHc!@b9-C3E0!36tnfA?l7n@oJobrMkSdvX@QQE@H8-YXjtIgz_; z+PgakHTAQLoy5`wSOa21UPuvftvT`iBa4V_1*vevbg-B#Yvvl z@ORNb!!wIVrHhVR_E;Vda@yk{n6Sb>P+Ux!d~=z|dP-rbzv;c~7UB?oopK{wN&|>=|tUy7t7Gl-l*@8c4Y^8%o;6Yxn{%1#60U|2Lb{+8urv~Kv zY}l*hJK{!H$VSV8a3iXlq}?YyzdeA~z5n2KaA%HJY}XUR1hCB2_1u5=W_L#s&j&NJ zGkCm}nfcD+L>9#?M9IdJIZHUPlJivY3|2Xfj)k9^*BDBL_*YMg z^zi~@ZHNWy#>OQyGyt?kCes4;wQ#2lEe$pt>@!poH!52}x{oApisHy2@T9y8L~k!2 z4oq<3g?flcM9u4|27?3J%3qsZ2PQMx;H2Rt!I&qt%!QuKcT21qW5!>0WrqL>5VYq$ z8K4T3w3dr&)n|&xyOev{jKv{V4ydTXwGeWj0dT?PeR#@;r~}uzl~uHBTeI;zTg;vw zX$#D$u6so0Ayqp9N)t@APgNldcU2+9Nq553O2`TUNFO$GjHJxc*T9Kpk{=1Nlgj+j zIf2>=AhmuRByNmSRB3<0z>ci}eZcgUy8T500^JOt{g#P9n9Rd`NEtv=7zL=y0{t28 zfD!GuNBDTWe@3)Bn`BwwaY2FpgI-Ug)DYq)v1VmsV-yiIg*wQiO-dfSDkU&ieZuuC zd{+g>C=lyOPZVh8I9*kSgee+h0_O@Ttd<@NDQqrA27TY~Swci%8#y8XBDSYjQXAdGrEYOAB z#t2g8AU)*_{}hGoG_8R?Qc>GeSsG@1UI3p0HZIlw=|u7*xPz_o;%U6nG%rd0X(ION zSpNG$RVynZ7;3mN_o=B9C1rAttGqSQvQja1$&wgu%IoiNdb`vd*I(&Pf4)?_daurO zdtqsI7;HN*vNbOF^m1xUYXC)q)JgU){be38&T@|*Uj9+RZnULUshawU4VpSX96GIf z!30BAy-=2=pp5VRknJ;dp}0+#-DQBh?w#G6x$EA!26|M9hm+G&0!m9uH4xv{5F7T= z<}=T_NO33TW2oeFH^6@cSORD>UfyyK^e|-dcZ4Z$U;M*bI|0KQim9Mx`Rpn4HT>gX zkDKh_Jx2NGN@U9y(s9x}*5T4)`m$$50@A{M0^K5tKK@?W?+!d|UVtSi6d2VfOc@|X zQ&^3->Zp~uVaEk#hnk-mRiLk*2t{;kJ>Ka^Lq5_B3=>f$QPvMSo>@;m8=ROVQX}+^Xa{v>$Pk~yz}UnGq~giG4)s^?YV#(>FhhFysZ^GQfuTWh z04{)&TOJyX{2ox2ugQ|O69qs!AU?BHvT6fY098O07mvHmpQ8*ofTwFZp(vPe?ghT~ zoX$a40whQ${~P%JWDC#bwO`O`fu+$tJpCkrXKf->-sl_(bS4rT=Lz$u>4thgzGbX? z`qds_uz()j$J$Tfz}U$U4Hu2R zILPjAUE&YYzq44(Jy(h)v%!Wm4^2CVUEz#xxT8dfS-9>?+Ij%&GW|In$PkCT2{rhk zlv38RPcoxV#{gh|{}&M95B`&AL=ve1N1AO{mY=Tk-({0Xks{>q5ugn{)gDqIBK@J z`Dvn#+V4Z*m}G>gg1m}4Cjphw-T%H=-lI{-vuFN(vJ#@|e=iKL<^XsLEO@nbpwPqv zJT?Lh|H0$w_TTmA8hADn3VO+9lItR)vtapJ(NH$P!{F} zE(y@ANJwBSpp$|?AiD5%#>h_%Dh;T#P$(n&JHP`KJ;`(iQP_H5^)x$&I$+?Ao*#)t zbH_Ap?GxrG>ZvcfLIJ*e=a~Z4gSu$w$SE~o!vK;f${haDH02G3GG6CbhPAHN;L{V} z{4}21r#A|)rpgpf@yP*M7)6e!Bsv2lwkF&w?R4@8zzgF%b%Q}M|0#4UORsU%fdv@d zvt^g4AWHsd))IKZz{5s6DlEgAv3+{`WM@a|Q4`(#xt1a7J^i~0iyf1Qs8DmRfui&M z<`z#D6=;d!w$<9ADtSvY^t}Z3W~U<>fM|Vks$B^paKT8T)>tSnk20fggshjk4x50= z#C;F&%pgJkZH+gSh$U*D_oyLF0WAY?DZi5ULS;d;D6r~f{yvt0PZM}TEv^ajK%}Hf zOh`%1`x3!6qxrWTvC?_PqDDnMuB3(mcxa{B8O#JwR|4l@?SHfyf>=GB{dCwpee|G! zMnc_Rl#=Svg!R8vfaS4|@pL^n=Ps?IOleoa8A zM2R8kGmSExgVsy0b#be{EjW%6^`{v_BDx9FCHfGE|`=f-U-%%*#`S#sa zHnBg&B=Fh@Qz$bGZenm~fchbp%KU`6{THj9>v1+;)SJKqYXh{1)r4reD0#fM^(ea{ zU}XN%gG`-?t-M=XoHOZq0Y=~{;5}`OWI6fa7$fBuH48b@S0N{bFQ3T={oJ9OJc$&M z@25e*-m>Ho*D@?BYbvN&%6`0H-HnK1V5!o{tI;Y6V5hiz%hkS9 ze=;7S^lu0J2U%(8@E-wvFtp-9M;ZI{P{<2hw1?mE1O(y{I(eb{^!M52LzA)@tfbMS z&^6}dV02=Jx=cWtg6?9^yVF+gQ1*sOgFGaZKE-8nP-yJvAW(3PwIjbnulBRh5$H?< z)Z`q3w(PV*|4!k9R0HebHb4Jfcw`v(SvCvNL;wF)%^m}T={vPo|R z!=r!2d~9v<6I?+0dL>w()YyfVW@y z9;-#r3ocdbm)0z!fJQsEJt1vw`!!R3AL?YK+Uk|Jd5{>zb?HXOyhaDSng7dvhPp)X z`6^GNSr;CNkALwil=ho+>RFrTHVt&h6+)h5O1x^nky5Tqj_z_b`Yg~ex)a`O*j4>o zf+38+up8J>oo{1Vv)=!#x@rlXn>7n2;?-;KF~9XaSv(b^*fcoGst^en`*xX2qQbhg zg8x925_%U2xV-_?f0v*JKdM`Y?eheV2D9ZWPboFX7N11pF-YB;Hj?h~uZ|~$iai0p z{(ry`y_A-JR^+3ko+xh+Kd9S+T34^5IS6016Wv%FuG&Ns{kcUL zhL~rpgv)E`ht$tzz?yjsL({(WpH`^PQcvo9SOo)rApzjlzFOx}sLRvu2KX|KfGCU< zNTmQysq}0OatR{=HQ*^_9*!#}fZYL6Ske{>loR&{BW`cN(1(nX&# z5`pOCtw-T`+REh7#upb`x7+6SBUW!Qv_7tsmB|8Gmm6pM$AS$qty`$}Jd^@m|K2;rCLl%)BqU=E zi+=ltukTAI?y9K1r&rnasUDujJOl`2t9}>`<>)Uy>G?@W_)-H7S5acv$&MgumC z=H%xVlPeQ7B!H5`zr~43{hgB84s__-ZzEJ_eP}3Ar2qPl|8eX6VaDa55!t;7Ezd3L zW=GZD2MFf5x1{ylJkiUtmy`8Y!t)*q zV3UTA{TD3yQ5fFot+km?Er+?U3! zAl(3Lq;&GBH8Mr~{QYZ{9ht2 zQ8kI0r9bpwvOjW=*8iH3D<$4hO=xvS*Uj)k*XcMa}OAtq0xm zfX~0Hs>b z>ee=|>gS|FqY5kR+v8!D{!O1CnSJNysx4?5WDGw;*_CmRF4Ve%>Um4|%$n7f-cw!O z^36z8<9*UJPwX&$XWCQKE@~gCqU+7`C$=(nk(X2;Dsk(}6gVw_2AHRmLnf&6VO_lM z-n*qlaerEG6tlM%TG)PlBidOuJ(E7YS3EUEedgB>Z%Nqcen3;`Cj5T8Y-8^eC}sEK zVhh*i*PHYa`+KCP`aX`vEuDAeliRxMEne=1I7OtCWy{93yRFF~3AVqsnvu((9E?;aq4 znn8$}I5xSYo61Ho^k*+VE;vkK=-*UBoqGHAI5xLwK5;{=w+GIno&TIjv3IFdO+#)g z!%#}mnQFrG#$Tkn^`pwzP03po(}1xpMIH$hXmbV2YTtj)6ilei9^@0`n~SI%T|%-3 zJEt`tE$>+AC6?O0s9V)Y&HVBADEonavAYyvkQW`Isfma&&wZhb=s{QtVKf4e91BliXsZ_rz|;sTD)SSFKB_}OXUSN?)%WNH-H_kI#CW&Jy^)5 zl^ZJfl<33$6V?j~R#v`2 z;VBe3fsZ48*H@owKEUd5@1dylUL>rx5y{{8eG?*LE3H0yKGv%>T>ZX+X=M zk7A$oNoJu5ZyKg^ruo&i54Ee?3Gs;?`g)?VrW*4nfneYFZz*!%_^gjG(&K`MFj5LI z_M(nK2~pIhaNtD1cXKYW|4FjcS5#7zz*BsBb*s9rZtz_IWy(n6qpqSvg=Bu7$u3pa zFy~JBywTUU5$L6uc)34*1=!`}w zaiQU^8nQtS-AoStllg_x|Cm$+KNDiRuk;pQqAlmonai-JXK{^womopE$6P9zZ-5VQ zz@J-Bz+45iYy)(Ui@*JI>w$C&_wv)e*9bfzZ2EJ4!4VFHIG{U_JhLhP?8I$tzkaIT zW(nAvcI1>LPi%ewnPJXMQv<#H#)lV3w%FNX!=RN{wpfm?Xj-iceTk_@g(Zg%64-Qg z4Y|86PEX64l5!I3xtJcDB#9pJFF1QqS;WeucMx}c;ITr6o;p_<=O9;@GHU$)q|Im>|sDEL2p`2F<_vK>{f~C z^*z)YhzkO8Ymt(^of;dS)Q}G`Yjg520_AH;6jCm{;@)IK68p>YJu{ERF(6)AHZ#uo zQUfIy-P2O~v6;mNsZzUzaSmCw2ZT!+F+{(|^Z2)2`5R8tPpT70>DNW@*YP@6IM*Fn zuPuHq+_n=DUD_$h2qgh)b6ti2ZNHE1>>~~7a#G`=ySuxQ?(V)1zWbcB_l+;tkNT8zt~utIBYyw+ z(i|-X#h5q^U_?Ufxf((0`CmtFHIjgGM9sNI*kD|TQLM)tHyCq!I|MSSQ8IYu)<>ylb1peW6r=&SUa{}oNAh+kP)SjSKj7#*!~$DjEB!=zPP6SGwkJ4T}y}M+17>$ z#LBB0GYo9;<+c75&jw=80P^|O3w>s_pseV#$(B)?eO>Q>hntxu%^3B2z{O3=i^nsw z1vVSt>Vx$3ymX)wjIh^cE$)&IglNkD!0kG^w?9K3DcBa0}2^ zn5p?gIV?O-!lr48HXt3tKYls|8GP+qYTG|>_F^6h!o&l4D}*LAl$DlS0=w(c6kv&W zj@};CEU;PdqSZ$M!RxNzVjy@;oqJ8dBx>nT)ckUyq2>JYRm-^(SIc?XK?kQZf?^;S zUB>WAYtHU>yeJ9qYa~G9;kn`~I$AIU%43!+s1mAmOSsbkFeppVs~FE~SScjwsMDk; z(mG1{Yp?o7hMh!2di-E{6Jl^l=i0e+qFZvfX73Lb$ z)3+{P(uZLNv2B*dT(9Fttp|B0qwIE*6cl-ZDzw&963fTc-x5gve*bN{?(~e)-$?Nh6<{QAfW$kX_e>gQ12>?tDIp=zR?)7{k&A4`b{OS52~~G| zT_C5Xv_AJmzjnUDdLG98Y-4q<&Vtx{!qqPh6h`2gTnUY45}ZkL+*pig#_)1>%5T9%gLZC0TWn;>FuDS-lgrU}(v_ zia5<)D|0&6A0s@?iIv+QWXe)yD`GG! zirI+>0GZEM2eBi$4;{Z!5;bGtozSx#J7d#1eAs)(Vx@aGWtb|n@0G+EPU-_YEzk$g z(gS4By#_bo@(D|gPx+zoz=;!c=g$UG02v^F2=xDUXaL6;7Nlfwmk`qjPBW|_GcUiR zKWs(jRC5HCO8G}{XrEY||4P^JSPh5-d@o{!J2hI^Y8AExJ6aDb7t zd`&TrS`u!>B*)}VDHIlFi8GYB23IW_FE-E5V(mP+&(C7m5EM67eVXDN5_LaO-dm5A^Bz)Ma+JKl2S@wQV zMK-q6Qg!3vY>I=$_<7Z_$-E1HF*oRgf>DYhf)Kj==3juUpW5qAiw;@u&x*ngC#^v% z8NKz(&8pBg#{S?cC!V4h=O5RRG(^nQdIE;}*H3H)-5RW_tC1tq6gytDX##*1qoos! z2VkAoorCif`su2vHR}r4-|7_(RQ;f8)X|PF`V@!6d-@F@X?)OrCW`O1v>e0VjEP%R z{Q~ODUCV=MVg2Z4%T(9m?97eI|F5xte|NngS6Fz%X8TMF8Mc5x5mJ)5F$`E$r(Ww> z84znHFcz~_nqG(frETX=-SGp-PtXI{dNRaFxUsxAzrrIarJL|vn>SQXw+|l28aEFv z&Sr1&h(w8Vlu*&8QB0}F6Oz$;6-*L&&t7d15I};ji(@MQk9qavxD=Eb$Bl1;OvbWH zD}|FV1lq`XT@iD!t`=g3^^Ye3EukyClP*uH+?X+{(a1Q>Aedh-c zWl>%kBtZl1sQ*lV6M&4zvAwSLr~aju07Te)vrR^QIF2Hym@ivQs0K`&c=D?P=EyL7 zDh-YY4N$1@T|d;=RF~HTS?GU~iEHm5-8DOn?mjWxr|Y)brZY2$)6Ooft|svhndn9%C~rf;r7xIU$6 zq(Vii-ApkWFD_dMZK9+Lsyq0EH%oz@UsF1pc@q;KH*qlA&C5JH(2G;1Dss1^Kj<45 zXMj*5-cc;9FO}p3VDDJ)UOgMvI;@N=0-~Y<6qIi@suW&L!e7_8>c8r2c#wz5fQn^_ zD&fKUkx9pqs>S++m1#cTh3zt4<1WN1zj)Pl+@06aejggF8*>q$<8 zNsFmo|8*1F?)n#(#rbFOz+e*<#xxx12NTI<3SOraEJsP2!#q(vrXk;EF!AA?+h@aa zrB>qW7@>-kP;hPVS}tOc!;c!+V7*{!AjeKkf5=d^2KK2R7`6xn^ za0KmcoUsh=HZCydIO=1#;-&ZetflnmiBFHe;&-+C?e5o6FdhIsfzl5Blr_kK-;mIm zW#;-mYJ$j72=S-OLvF<-A%L>O~`(a1%Q5TM7qZJD zDGooR1^@1m6`4iD$-MYMCL8yS7nWM{djwtRT`s8C*qaf4s=6 zc(UU^3{>s3{7oAv0Rqtis}rB5lzT01oIP`}n>~%1RLno--TUiG11bq--@prl`|~<| z&G>5$CA((s0)xwnk==O`fIH}!%BJy_5?K$C%gQf&$sh;Q2rwXvw|; z!n)jh(%bd?ls)qDRvu^6Cu{ZTi@AZC<1^yLA)TJ~IS0Tz$4dg|FiSY+CsE)IZc$n1@7l#9= zvBhx!?bZ+hrz@(XP6XfzQ$SZT>EWIRVa}OX(0dXj+&K+?Ittzq2E=FpAADLt+ApZ_ z3Do=!SiE6tRJZ@J>7n06HdBkj(>S$P+Hyrr!Q|Vm`s&%!L92L1&g zXFuMh3?mbaFeuGDj&j~Q=g0)){1vc<=3!PT`ao(GY|_l&wT!%&#maoyMEKfB%t)eb za^=HAW4bl}0Q!IG1;lp}Myq!1wEuS?z(G*SofHV*wx@4wDO*}J>_ll+lYfFEl$`~rycRRI(YzdH$VqivUk2R1hQk} zkpw0GY6vjO$}-x<7><)wY|*P~1Q(O=0jFq<;LK4o#H3Xq%g z^|j@maLdT!kx(`@RtPQ8Aw6PSaJ0I1=yu`Py}kkw1O{~k{{M*v{8pdu5SZO|$A#sC za5G8AJf`fMi~wep3Yb-+%VrZunbtE#dvWvN5%JP-&U!+w$hvHmtuQwokYFhC09hSn zM~KFf&FrzIuGLJn@Ze-af#J?mANT(p?&4+1gH4CN`CD92RUBi?(jx_C&87jmRf_LP z0uzi1WI6%Ve4gz~@JG+bX0>Y5>Plt9k(&VYtU<~i!q8(9oE6Up?WMcb#?#f8WsmHz z#wQtoDu{C4Ld)_gW7p*4b;dhQ0m`4D!~pf&7O3^k?gN}x2MO1c_T9%G9($K36nmE= zRr~t&6^;0SG+D(6sm+CbX;@~rc9r_CTbR_%7tXJItg*a?jG-uj@ z!7ZYU%F0TK?)~lj%A>_77j@sGal1e~_H5;TmoDm8^t zt5>cr*E|P4{uLGv3P2H6$d{sKLg9MkIKVt$&zT8-ojoBSJoMzTix_hv+fV!z82$I{ zb32v*Ye_5uLDzxrlB7Y#n|^P>0u(kQh>>s3v(m|n_M!HIusP|lr8r3SIsbF+04O8fh0 zC87z=K#vJ=#33?o)gxqLG|vlx6#gCXat&)_wkyZ|V}RXD!vv*hM2&SEoEeuoA%rZk zni4ZUVc8Ro)f=yp-A7TTU3rv_)Kws~>KLbRkUVbO_3xN>8pg&$1uc*1c;n>(yRmbX zT1#yf`(3%qy-Cq@-1VVPff8F%Rc4Db7gq}F4Fw58Syp^N9fk`ah|FuI>!JMXj}s=( zQ-xTQgfyzy3+0yAh(Q0~C^Z&nQx?dnKu`+CX{6ShDkcI+tXd2$3w-oZ9$20ST4sxU z1^H0|%FL8IriocWBY-XH*+mf1 z1L*8)$tC521u|)`z_Lz{n-#xLBT?zP4zCCvU8u%kn1=|fymA3VSiQqPi{&H-X|qw9 z@+4SxV}n`ogTEfK+~SOcK+nLTN(n(ffyctwCY@EbR56rouFec&aG^Xsf~4?h%`_Y{ zjxoVk;iOCEwmt6WRQl(DW=TMYYs9N-l1)-|M$vJB1hQNHM%Zp+&r$pPusNRp(~PZ^kT_hJHjqBsKL z&aLF14&4&}o53>?Ououe6mV$hQbBwx+Hw+8X5y7Mqsc|U=Z-5YF0fZx`wa|GyCH537@8-DVp&abM;AAlZ6g^!$`_@P|>h>9@ZzTJc zI&R+E15@O`^R0ju<&c3Lmd9xZB0h>;Q^vIkfh?x;i!Wi|A#Thc(s-mnOpd zO9%5W-#NpM=6*rNQt|r*61%)TX}RG$KR=Hv<;Cbc2TS-e zh)M`}o*y$EjGZ1UJG%fyU-=Q#48nIOb{*MjfEr3*Uj|_RO~rx!Z)m)oFPk(UTofjs zAb~8CMG~_Im#eyDd~(}6WEX+Z(#7IcHut8#7*R>(1tG?l!eIYaa>bDsOTw2X8vF zFqv=nbX;aCsm8 zBH?d@f`yssXldg*hueG#)`EM9JL8NfH`3jXV+tUg9QY~GTwQPWDMnpYCm&dY&9d1n zmx6v+wfe>m@7ze= zplWn!%V9679)CH4*p|SXx=*9lGCVF0lQYhIt^$JC>yagaNtY32_CoA!{y8KKeV!Nu znM#qp>?QqhGB0dwMmnkNF(8>l1|XC3Zf|2pU$I$HKk9YU;k8hCLD@Uvm)=DO!^!Ni zH)uZMmm=L=U410GU#(&Y<>lpV(HuJ2D1bOK?eHJOa$xUWCw-LrZR%b&hc3cvXbiM zwEmQ!5`IbiaZ!;4rsHE;33RN17xn8YXW;si&;JkIZUsAr&e8c}mMJ0jYD>^#* z=BXX?gSWfIcqISxcm9`Ts=(wj?Z!Xtu$21iPd95JgG}5k>V9)fG&E=cTDZ}@JTH(a zHE4S{Wl+z``;vFb>BQM218(AGQkU;Kb5gb!3S}uW7=sEtSD|NHp773BGJ!rmawnLP z4auYoBujhBihUobD%!$oBf3tPP-rd9xv90=#-0}3^PSDZ(fmtUlZtf*|L)6l{ zWiGZZy=`j8Sc7HWBTDfwwm`%2WV670xxdoCvmW{5L{Q=_B?|j}-YL23k5qMfY?opy zv{aQ+4P{o2;FN}t*=Cv=363%J-n;eC@`|tXAETW&zmWS5zDm3$)}zEyNp}FsBb^nW zM&tI82L$#3ntOYqu4g!~apFl&OpN^&Md5rCJkg@iZha1JOKe*3MCES2H)Tu+eM)!?^_jMe?d zW|YjSE8GN!NgF;V%eL@i3f<}T;>n-+B1IOf75AzkV;bGwsX}?O&CN~lMZ)koGv7G= zRKBzs&F)-gY==tC)J&x?LRkG8jQ#!;g#5Vt?pRB6)hG!8m%SLg{6j7?s}NDktQhUA zt`~!4gH4#bhth^f_*R?J2g2F~v+B!;l+*ns`v;;}+d)6CH>Em|p35}KyKyJ7PrrYe4(EoSZf4r5;vg$l?$C`Rb9~L4r#bO_d0n-4AXVL5lr1Iq&st%@xCs#j5-@b}(_K@umZh=hl6{;| zjANbMe*TU0V8`u|MIx5(kB>0(4kL?obc`+cP1#YRx1 zj6*(WyNfpJEY{WjG=g?=ZwK3h{%*>p|5@sfvHJQ5ajj36fRIU>IVY!H$nG*8k27j= ze%@M&RckCU84C-9Vn!P2&AagTtmu=v&hqfe*oefQ3GU4?&e-)XcgBk~;qIM_-Jywn zy}NT+WPtk@6ip_&ez#LFILnNL_YwE*?(ST!6VOi)IG#40ucQEke8QHNcs^ULATmjL z5dlo&2&zqAhl`zxM-L`Iya3^^ctIfRMETViinkzp4ps@O5xESpChOIBTXo&;=My6e zOr5l9xWSu*Kcz31Ulf|GI{hsgYjXhIp1A6<33lV}xqDd$?b{wn9k3@r*9A@UCexu_ zc7rIQfvXA^jpsIJp6@>C8T;NZtlkPbuTNYH16$%BI>v#sY%!7~XarCTn0*s0PU4wd z3;)d{+kRVtHch$FD=*Y~^ASf14SapHOa-0Zj>~wcmy{aKk7~_|uj?O=StWrP^J;LyW%0={)=k!XKuz^6I>r?a#6~n6VI( zk?Hv(;Kyt{wx?iBObW{^aH$`Rx*c6Fb`K#|fUzE_CgUnO?{)Cv-3aqW{#caEbS|?t zp%YBwGp_K~K$uTzs~1h#6LZ`!5KS>TJSm303)_ga%ot@I-ifsMu&^pc8eTKrtERrb zp2PZ&H_z0#rc>%FUMt~=_YBj#^#(qjoYKC<1X;G&YcQPziy@6PqKJbLWuC0KLq%)fVcDltC!pOuE^r7y%uZ)niGAmlnTLbY)tY!(b>}yzIFuXlg3rL#oijQh6 zkPNz0YYnq1nYmJgI^v)!080d*16o~0I-+=v%)O5Dr?;bcUM?=8n!dd2isDfgH~C>7 zqaJ3#eND?+=8#BK;&YjlZa&w9(Yt#4_V&@}PfG+f-vLG5RxYD)1%;iBRLS-3+Q!iBEEElFi^V zo-Iowa6a6+s~D<>uZh_J1ohl@(NpL&RaCUJdX;#x#}}1ln9#EXh5s z>Iz8M!asG>p_&Ua0C}u{$#dEQCg> zW15SEZd0Mj0tB$QY2K8WONBLmnPm+WQ^cM>b?gEENgaO7?7bV!SbYURhbCH7Dytc< zX+*~sI(L+O!G5h;28ao;ft%Clftx^81k)$Ff(1Z`M)o_rlOBM3`8~pg0Bob23$<2W zq^Ut}Ond0LQA*KFfmBZG8ynWs@v40gGWg)PtaCv^#lLrouJo7dWq@wBtCEI8lMKN7 zSRdi;QN~XIqR(>|H(zk*{72pv^y4fs<6Yf42+9&9W%jz9m1LDrD`*f56{S^_b0CY0 zi`z1#QLh`NBq!6pn1f8_Dzdads3EdaHbYZXu612wZ5n_`Pu0(0hBK2jbz`=?H#eSj z8pz5m=p>?=RX~Ma)GMr%Xr`-L(y{|xUK>aQ0{JNl)y~E)W?&Ws<1=$7QZmh^q+4cs zb>x6~SC1rGK6@ph>$ZBHUrDXsMJE$bkF zt&+E_@tCV#%k8Mz7C7UXjXho3<@sI3OAwb^A|8gD%-;C6Y*qmB02D>6E2D$~-(+{z zePn0E_-hB6UD`8|fC@4K03EcK%3t?N92x+S$^DaWG=C@!ERO_XBKi=->^SMyh_d+f z54H5QPF(4RE)U1-jFj?2`A_h-CnnNiZK{%Lx!>;8g)|QGc6Ue52Q>!)W@AnJ%De(CZ8{N&h`9LJVq44{j3Biz}`* zSY^Mb;Nq;d+TyWg7S}|f+k3gpS%I&Q=5S`-i~5l%D2np<*JTF+lU~<6*;tDQcRf)2 zFGIY_mBzJ+e7j#_wfVrB#(5cr;nOdVIEH^Y0T*jOLEiEnk(z;_+itY=!)OgvKH5#f zvIdENUZdXP4XjiSUtr5#kwmClI%F*Effx~^=P~={L9*V1oe;o>UxKD=RrFe7j3AD! z#k#3l3b2vXQ8bmYWp^J@{-96~FQ+jLO$9@#0Q5CPU27?J0IY8iXd0Eoa5SCQHgW<> zRclRA4c&gcf2^7V>iRLQVv9pYr-=ko+TEQ8Q3MJQi5zQE|Ma!WJb0#5BMUfk#7mT@ z;PpibDtt1*w^_~Y>H_8F<@NK@ue%c4Aj#R;F#jIvZ+?otrS|%oCf- z=mF)Z!z_b0XpxB6=fum4*k3pzm_^^9bk4;ZYvtj{v+49HTMST5rSPxsxIb`|-D#^l#I=G|3@+MzZT{rC( z`6EE-g|6J|Y)iGU(3-fe35h=tg}4W3F#XQiIuxJya{DCf{_+%gYj|9K&deLxW!+So zA!&pLv&*FgnRYp?dQijAlUr-q&a24S;k)%)ucq!L9eL}xogJY-Zy+(zU}Zs8Zu|3Z z9SWLKmMkwc%L98kMgxtLcGltA2PF~qg@A0z<3L=tktdv!Yu#`U+3IdqBS$&YC)rE# zU+lrumq1_wsM#c`LAyK>f$E;GI7u&6YDkQa_rJS%>3LOAyYbZc{f%&YSkpVcL}f5m za7x9|5t;Al@{{{ncj7scmDlZ=sQcwv?=2vKwB;t~LQ46of>`aHP|5Esvn8RTtCc{0 z=}twfur!AnZEg%^5uw#9k=@Id(J!h> zT6dmG<2E9jM2y|hP!!CGyEgYlM%gBQGjp|^I3>?q-lcRAnRS1@qQuQ>AcqF(g%_mS z!n@uaYv)Wf7_c82+XmZ`2gY@Vo~q?onPSFGW!aD9HLxi=909rgzg<28*`cz2S+j(I z!k(H+%ZJt5X(P`8Nmj#Ec9fb3P}HzflGIAo$z>zi_oBlQ(CeL0}Mgv$*65z9 zt$Oak+-b?_iPM%4Z5m)f09HeQoYHHIeGhsuy&jmJ?5UabZc||(u`3}VDZ3PaGa5msI6AW($STOAbJo?BYnR zatqdQm>+oy+rZO>|FgXBL_~p1yMIA7(5_V2q7R5jE?|7Z4*7v##(bbDAb>{6`{L6Z zIu}eTAti)+zsdv+!A&nolqlH8mzPD0W}g~*Nt{<*Ih?|_5llt37EDE{w-xg0QL+)a z9l|wT-=|PBG6JgJoNmGp0G#=IGc`g$%Z=b_VdKO)eoA-ecO<@wg`v5W-va6vk@Ixd z8yk9VztRMXuDhDIv0eE6`Q$l(o#DT}$s_4X`fXlt>`K?EWUs-CPv@(8t_G=W%VqQP z)u=>oKjU=r1uOfCmJ``+rNxKf9RMBtHh|BmQ>OxDyF0R7N9C$#Z2ehsZ*NaIq^=;Q zj%Yw#-UiL_a4r~7E+u8+*G<2(?2RDo8ybppOHIW?f+44*RHlK0gBv?Y^ORvjFi+w4 zXShIdp-ykfHgxsJhy_i&mh69bPUM<7os_cPSZpg zDdv1s7!wEZ{g{aD7N(47;{%CZ-}LuKm^puCqXX(k0u8(ET{P@FGmSR!&tO8j^?S;m z@HdOP=uB3V8hqn7 zQop1m+|TA?nG$Gv`D~FTArTQG0K^=~68%&Vmz4Bt&s`%XcGlU zF5d)MJ{##mr@P1$Wm+dBs(ygY`^{Jndx2A4WUo&r<;h&>mZ;?6YA<-hXtA}$uz0fu zz>B-XUs8Ox)CuxcF^+-6a{-e4agAcF&C19m%PU@uv4ti~NcVe-xU3p`6T(5I(HlEf z_Hc*ZQ6`GUX?p1TNbvK6=Pn{8?uavT1Eoj&O!8!JE*T4-vbr5Lk4{7kO_imlS12LUF42?EBOk7KLqr7t!?X5WFqO`2Jg&?&eaqxIR+Wz%yK+c!3yedDN z+Z5(p@hp>zK;{>R0@WL1TS{KZJC_CX8VO;~=K(eyw8g}&_J(T*wFEwBZF|x%qh?5t z9_!spiBUxcP~Npr>#D zQG_D2YWg-!4kLvNEQ1Q5G%|GO0H(2#pI7F&G<6Cb`q=Y z5o->m?tlB3S-bK8<0O?t$|Ne9a=MgzCT6zuMpehQOiT1xkEUkr2|J>n{qlbjK5}-9 z!pC`+F|EwZz$qNX2}l_hnL@@klcJ2aK4Q0|UDZCSS}+_fhLvDUenGv-q+ww2A2$Y> zoBvce(2=l(%;(#FqW5C0_Pk(hx@*~S>%BafMR|#qv4$PuRCYt|Z`%wgsMshQUOY+# zpneFFG(XLB{2ew#D9Gd|hJiX<0_S3fnyyM*dl^WB#fcDm zH}hlr=D0Fm=ndbo2Sln1VDevk076oT@O*tcvvbqWxs9b3gn;cR%Uw?JU^1p=T(cfHg)QGpedZWh{B=Z)r!puQ#!V`0jNseWF` zlt*U`0kJ*lOO?Hk#bpuE5)501q$H`Y*GV)E!++=7(?vnc=u9D!<5w8Od`KNyiHyh$ z)j8z!tX+_loL$_|P>@)BeA8=}&bc!+(P{7C(CkrMYzM#4@1-z04{+d$fFezR{iHJC z6Fkd|CVwFPBcR>O4Glqt8=3!ZO_-X-@-9unR?Y;wME{CXT|pu4R6$EA2>EC+Qx{;Q z&6QKZ5HFAZdaK<#e3E%k+#B7<&!T(z1Ma6lcZ2kgr|Z2Anjwy1qjQbG)vH<&866Va z#*C21XxR^5b4=b%?w{RnSLa@4FM!0Ib~NgAl~al9l2EH=KhD(y+tH$bkAS}) zSn*HK@n2>bgk&s{7btB&rmN3SY7OpbmUv&;&H0T1MWYLwowApXmYTplBH$%CV$=&) z(8-%KE0P(4lMz^7JRAE;o9(zz1axW@qZK_d$7)I*jH8-{i3>$1(}zv(wv3lsvt|4s(uUCKj-hbQ^YLxZ!NsmC!whfK)qs{lCcxMTn z1TZ)o6wJc>aP;V$YT?eC1_ny0iV{;g^e|=q=~h8oM)65_ZP)wQ*jw$ zpsUA7#pSslIIQV%8cw9csLAZbJU1pH-Gx38FY0e#U}Jv_n=#p6WyS zhjT)SxmpBiH)Xk)iYm7pSHcpxnAphF7==wog|)()AALs;78_i7shb)09c^*%5v9KB zgH0*YV??tkxc{V-L0HxcILSqYH=jy1-7OK@Y_KL~=D;&KX1LeD1UeLnY3%)6@#c0g zKT%gO+$md*&=dEK38NlP<@{tDY6B+;a^&nzi{b` z-3Az1JMdVAD0ZuEq-g@FA1>!H6N61o9NkY}=R=jbNtG zNhOnV^m^!BOuFyIn`><)nMi1KVsKv5!Njg<7pwK= zsea&XzJYK*xuzQby^~eTxAP9;Ze|X(p0TLN65p0|_PXy%y54wzNkB&4gxs8j$)lV_ zkyIp!k?U%Qj=~M-2xrm5-zIMD=`IP(N2=fYb8HmV@%;@gpzACyV(8s2!Q4?*T9yf=@Zz zRqdD1C)w*O?S*(3uDPQ?&)Y|7O4$75NSyU6e5!pF*Xn~QxYg7<_GJm)zpT8!(+S$M zKW3NhF0u29q+x$T%}_4yZt-}yj2pT;o*cK$Hlk!`dU&0%or9L8_((bIF>0N1gr-c_Ok)8RN|pydfl zz5(R{|0;S{gTQqF^;qTxEWh@YE&(#JaEE$KsLBB1tVy+i4v6H>YCD;&LKMg?OS#zJ6p< zHkB)2skL_ixhAGR?Y`_`JZZZEB+m(rU!=MCF|s=8r-j?{*K*C!{sqU9lp(%{&$Z7= zrl#f{9W)5?4vi9YBtyZWvn}E5{K-Bjsx1Lmn#JR|CpWTaXx+g+G?V@9{+M@D85xg? zm3@Q=TO-RI|JQrH$wH=S9}$l&u6)k*t)lh|DN5FDfcgc5=@tj@{*Y@2DfTKN%( zf!9~*iXPu$nzj83B%s=Z=RJ!V&#U#itg(c!(w)~r2`%0#2Msg~OIDbb_ZGE-K;nPV z3+lsMf>ZB3g;Z%7ylgp<4=wooEmk8u)b8wYMSmc2a@HG@)rwJ(N{|4R)5P^^&t?2? z6!Z6xNwaUsY3bqA1FLg2Hy832arRYy7wf9-X;>q2-t)_;sr}RpeUy??ZmiEqlE^ZW47umCt8^3UuhA3?k!@@jZ7N*p1O@Bv<+#`iRNRw}@6J zpKnGf)oI|w^rigx$zJyNc&C?7Fb<#ZWF(krE>Pn*uTlv@D+ZYT2W7cB?Mt{SLJsN4|HVE#4Eo9sL1yXtX8X+4z0CdnDKPe zuB%?YSG4F3!(tFgREk4*q{cAB<@E6MIeX#<=>a8}AW)pZSNo#2;Sbn>Y+R5z0Hhy|#Usb0s{gOM@ zqAmcV$}jZoPKZwOO_c6pOKazvwaaTwVH>6KVDr*NPVj<2d)>fimQp#<$8qBf(BOjN z*yz5o={AycU7mQim9{) z6P4Hs5sgMTF$@wTh4)zUqWON+PU>7Hk0bOhI}vaZ=`Ce*2hDy&lSc<0ki-J)t@Yid zaT6pW{cmH--dZ-m)NR2m3t$S`vV4}+%Y6&{1|MtgILwaKai7k1vB@ME3TwZYt?q}g zWP}HQr-joXFeD|l1qOJ{ZbP|kcos62Y7aRZHKwgg5tqhCB9gXyH&SHdG}L{CTmYI1 zP8mIw>v{vH10AjYZ`bd@8!RC@dj=6&j_zi9Gmi^{55LcwQxsnC-cJ=JPcS(x)+pcLtVNriiTDolQtgdmvImQ+_t(;)>d ziI%bC%bnrY?qmUq>y3;oSmHCVKj{4hIR4`?%HQ_+Y-@Wl%RrI6c4SMCzApDWrRQUQ zNT-z??!WVZ4)%hQSR>1szKDKyotUhU{uU*&>eh?;-}8@-0@1=`<1+^a_zDszOAjTnwmas<#G~{$E7?VwT=f2W#mSa9)0WcRr%FR z1SIf~Z{Td^O4$67wCKs)T}s1B4^3}g-CYrwzLR&Dh3onM{d4tOx7C)f@hYU-9Gv6_ z4JXYyXVIpI^b+eNaTm+@h#{SW?z@yr)kJ_@k_tR|oPTQoG#evxdfdUoKXbQf} z;w4r3r55nnQ(NzW{^YN|N#PZN4_YVr$0im8Z$@e%4l~^YG*I~TCPA#EWZ5$?cmPI} zFpo~-%2b;~0=3>CYpH&0YYM^kgHN#TRP(S08h`=y6`}nI0&6&(uz)|y)%XHEv(f&Y5|++i`tyKR6kn2Iha^a1N$6} zlC!VrA+jy)W*7PI;&}Tj98mo*^vj8y!LrCY6DNCZRY#levrdJEQe@j*#G$4cM=~^G zsJKU1eqBxy%$$T)x4{hpn3S|cTbp|gK0Y+~o5clpX1bF|rTZA#KH3lahWsHzjJUNss@;2YV+$u=wmnZy1Uvo zREHrgb-1aS{a{3?`5ZT=Ogp2@pNJeU=6}i#e0oH9qhH@oE!li$IVhiZZkwrnQRD(# zx!HW<&7kRBknzTo1BRM*3PVujxXEskwT*$~`COZ{9#^9V*jPv<%J24Z=S{obX|n*f zGM3N7JC&d}bY4&xxcH*FZBx9VGrNxGnRIroOESShqhNJ?=hqXDNW+ZKuh_QDbEI3~ ze-|fc1)wjrEzd}95>e86T)|$$S$VAQ4^n6M3i>Kb*Z$ryHY4;p5MNVjAqHo614#W4 z0IwV^N6NNhB@=n!D36u=J7?*nY_y?f=lR?X?=5PLdy!7v%$4NX1+M2aN|6>I>4YX9 zHLRIQw*W`=CXH(^fTTct++l$7D#fSyz`<|gXmV6#Jt^m2?_`DR^8IIY{-#U8C65DE zS6aiW0>BP{`sJ@4<&>J4KP!}TZ0S`A6HQXIHU` zaImocq%TrtOB&+!gmH0Chz5^WG@?ab-hNORRc5;Tk40|S0s517*O0Yji(uVL*q{fj z7!}xkAMK1in7qZLK`Om#vdPm%w~V%{*n%AGMmDvZetx-yBENLM$^`dXW%^pPM11is zTMNwD69%XmT~-UIVr$D>bsrqLh@ElKX*W?<^V^%7o-4Ody{Eq+2u$HLE}~&H-5E9N9p}-Q`~%x#j+EfWFAqK-BUK9~!{IXFH!s z|A{%U7uuUfP-|3SPX-p)Z;wT9-UEBT3313tn_lED(a;hH6ge%e@6wVxSviveNNCZr z(QTiHIiLa6E5?D|olM#C&apWRyz{=xvK*z%+kDyC@NZ3fLTq%q zg>;y2XDZ0|_xH~h-7>})UYE5*p%ecUmc3@STkvAHki83@6BfKJuE4fjO^<8c=^!N%k1K2;|KQ z0=>F#pXv$6-+4oR)A~SYy)fU#vhybK339GMNH+Jw8ujZgDUaSauW~njA~w_(S9(4L zb3SL#=5~U2^n}z#KPYU4iTmoR0pAJ9IXPgc)E@$Tx#^ zh(bZHsLUBKA>S}4-&ic}2UOZJoO+!cz(6C3{&-!@=;XC>@#xE^J#BHrc+FV29{$!xFH z^aj|uhEf$=^n1R!~eSR0~Ikf{cQLyV6v7o1={v{AY4G55PxnW0pCl)Q-Elp ziblZD<)XgoW5;FB;>pIZ2diFDgl`5@E@T`7uj4nR5j{@v!V=^Y?2T_ZhIMq-3aMFh z0FyW9z~6$|+3LvSc>J^bj{(g3k6y3Pn{8en;n0#Rg4a7SG3w);<^3&hfs&H8+7@U6 zo9~v?4p(hYpMakd1v?ciS&QdKE_>qwH}9Ot!_e{!E~VPnVd+b(eMXu(W|QfT9m9lz zq5R0`+_*=%Jofx~aIWz6f}jp_Hzelmg4eloT0uCR%c8oC1-t|KQE?Q?WXz9eD80X?nN=lg@vK(c4~rm71RS*az4LW;mV^FRZC@S^zwo7`~2l{J@b9;?{e?={rN@rY$_7}%h@tp=FCUJr;#-Pi9-KSZu3^u~k)6PJtycYy4Kcg^kndr;uoQyL9Sr<58 zWUHnsG})WV9le^Z>~(8bz9{_0WLj;lk=E_Zgu5BxHN-45G)1HwX!*i5neKVsy8^3k zv5}}istuG!`j*1~VbmKp)Uk{yav})qL~hpK6w;sogFPzieF`-8+Ft{Gm23jhh&il$DIXT zfYv^`rF6L)Ls|QhTFI*D?@GTvzvTQVNLTq@v#nbXOIG$n-S-TX%=-zS85&O*B~~BW zpjF@E82^r`VmQR(IK{hnObp6A*7ocK&;+ubUtZ{prV>N3j9XFqRnUBc7G-Fhz0C5D zx6lJ<3S1EIP1TZ$r4yv4!ej_kXZitv^#ye0^Edk%Q|;~ouK|SZO#ECKuGe=3l76DK0dvB~h zBzj##0a!kr0HqBy-2?UBSO){v$yo(yCw6zrzi5lweCi=zyX04@ocP^ zO~SKm(g*Zew@=Jwdf@Hxzvlh>n{9x}^7xefKJ4;FdF}(1!i-o2VCORL3|v_M_DH7M z0OH7z4ICmsx~akMO3%q<`P6JekL#J=7Gh4}gK5HQV-e3h*Xvswy<0PR&xzfqar}K2 zdy4(<^K?bv&EVz_Znri4Xt7U=aZ3C>7Ey<9lf<5K7A~_;QZ6t3x7kgX&PAl)_0y8M zD|_|$5SQRX&rHc&1A&Pm?Pw%kvcIwsM>^N9EWkQ}iW4*^(Cg^Cc;-FQytYaG^6;lF z{1-iJ1Av_K42oyM#&IhI0*OaUc>xejeXi}o)Te}`jWbrg>7fHv06MnDlmRl!rQo;7fNuepa~4J;)OoBFJGD&zQ#ogs~UK>*&X;ATq!wv7-Ua6wafY z1itr`mIV-uufuhT74-+lO4u*mHCk`_fap*nKOimQbCBA(r|V}&4&ODL8=*ndTQ>Vn z_hX!pvnkUqHfabccpt5bsquU_IoL8p59q8UaT%A6Jn_1ftBm%=)6*80A01@K4<2&&-t^X5=UA893O9euDsEyx*SFO z?KB`K;~8M!`Bg@&op7`J(`^}_qmrv{r3~3e$-;A0)*j;b^$RSeyb=mJB z;8QD2d>7U}moa30SD5RNFM#H#Mep(Fvs2S8IMxQXVQTQC?C20tSmao{d$u&bC*HG1 zTkh@8hCa1Mncy#;(PCf6ou%WFg-n1`QxfCVF+h_>>qsFAD!HaI8)^R0`R{NyKNKQI z%B*M6@w1nhbNg*$D3YwN+?8Ir0_&D+oj#@Nkz4ueOZ0HcdOt8{MUbZcMB4xod&Fms z%4XX!Yi6%@{~gMcVriO=n>BdK;!JMoJzKcS3B6UW;dy~U7n3s*FV5+E?4ITCi~Ul1 z%EbQqmV`^t`kB9x{jti9Y9p(e(G)H@2)D^<|4T$yrG0B%3w?=2p?tL%YipM{MJUx@ z*ZI8^I$?lf3`ajgq|Ernko+q2wVYKeP!({nI!$BYb$z3g>#@8tpVu68)-Iqz^o)|u zf@10bA1;YqKGdUIBIjoUxbEWxv5XeL*%-=yL~S#pU^66`kCCrKB7&hOezPC%d<1}OZHPWLIO&|fa%zs>Q!T(oSYpx2HUv`y zX0su`Wc}J)CLavoA_Rla4`&P*g?_$yMu}s0!4QMXc_p(vd61xBUkat6@k;dU{4H-5 zi%|Oqhd~NzF=xzlnY>1wr+6vt0Q;z2zbuj`;Re@OS@=y5O|*pG#wLs6*{aPJW9hjA z#gOjd>w_py>gW9zAj+1WA#_0EYHz_K0p>%o7IT3##o-^AN@cMFp6wO=_vj22TbkQU z+F=JfqbLy|8ki{)H#B==;@f$4ug1+=k2NJFHs8#q5-HRa-2c)d`iAzcG&U$00vM3z zKd?~-?$b%UNX)q22z2cGi8WmIT9w2C1W>>mu73N&jr}XvZ|ND*By#7894yp)x*hcU z*}P%nWdNgcPT!o4+ZTlNC|yT#xLw!)uJq|Y4x2=|y4?U4hf&DF$~;R)cgG+!=Q7|k z&Ka0cAFX?~Vm&DvJPDA`0tcLJc(eY=PCcJCZ%SS+#DB8?_sC?&n};ZGNp0X_ie4FBZj@}_D@w}lFY116ME1MZ2YkxJ zi0Wvs3$S1DS3cNYJV%!?3Wxy!VX4~o#>SsJt;ZtQ{A-LnMaoZj?h_QS-9S($QTAk$ zVU|1<szWAy<54Bt4(OEa zQP^6h^qi&uS<;r6J6N=jWSuv_Cao+(6#tsl2=nsjsOL@R6!uMQ`h2kXXB#&2FL~<^ zEfE02{it!j{luz_Ycfbq;Qkt}>~D~)axj?TEzyGJjA5zYbj`W;Qv{s2+I+u+P4Ndd z$@kvsd2-=wwM+Pmg7l7)i?fM8Tb*uj)(I*5vpow#ihX-{l76d+G6gk zEXpUQv=*;LH~!e7%y%+9I3?iRuQod#a1bS40?JtmbLH762>WWViSE^J8=GX28&}Rp z%hR5D<7XOV$k8{7(MPUOVnMK_lvY#Z0><;k;sS?%dCQe)F98XUlGofLrJsN5iURd_ zG~OKB>-2sn_3ImRfZxxjGkCUL*(`CxcqJ=Zzl{jJt71TJ@~h>6pki^!r8uH?k4yP^ zeffEZE8=(F1CVTSnqodjyDdS>nKC^$UQjPAeo_yDcKwx@dcpn`m~XP}Pg%o8VU8#D zbKu#x?R}j6igaGjYZ>F;(7N5IxeAQ%dFMs`_G(otmkWEH2=2N}_#o{F#Bt1HhqlN- zzND#Wq_|bcJ~N}OtwWgtQF2Z$saT)FO;7o@5oWCYw{hr;rO0zk( z#l?F5gPqW|bT9r_B+P?Dvd={zJS?1T=;$Z`ncpggnb$Cv{i5fyn=$oBv}pO4+^GLr zqfr0jiVUe6T@1FJ=hXSI7SRerdl`aS0G?mA;Y1DH9;tV!(uo;q|KT+%(-L|esLnyn zwKw~>T6*Hc82)dg2?@1+)kLX4|2qxvF!S2KfkIW_x}CpfrmEO~#&zFY{4D?lFu zCw)K#BxBB=IJ&cB$=Sp9KQhqJECcbpO#d)FfA%?`rIp9H#Po}~YT~UIh%uX~-!POK z5cFrvO%BP85T_hIq0zR?0_^?sHfxhLUVC%lk{+w3A35*Qs;Q~@&@zUa>A2HhovHZ8 zl^WGkmc(iC~o#czSZym;-0Lmr(lE>XWU2D6I&G=F@u)tj0=BOjAlP zc=bfM48wl%#f*xQfE;Vy{#KAx(_1#{5gyfuMc}%zK5{AQ@dD)G5IU4j5@?tEk)g=7 zzklQw`+K*8&3g8yI$sBXpTaMoxr_C*{(uy0-tTi+;beSL+QU9T}Vnp<7v$cR^u{@2-p-T^9q1czU>$wr%_?n5^&rW_Z4V~ zUa|5VP~7GA+5YpzJTXe};eehR59^!&e(+);sX{OJ+<1-881Sa3k-1xWL&fdR>_;tE z{%(<3dwe1C31s0S%HtQ0>gI>52<_v8o%uEz=yHEL^`oKD(*B&78|iLLVV60w%~jWd z-f1rhK~b|x)!oN3Hm&Crfc{>T+Js%M$a9T@Cvx1=g*|{#qnVt)OSU?|hUD(*Mu{OX%~1EbL1v9XSvRDvkY+KZoHUBmm*bsXMn@A>v_F3=U{z8J@&HO(? z5mOYZjnr317oRq)dj(QIGv#++iWj`5xxZ3;UztaH2=7(s)#REPFBcURwYN7Pv$^!y zR*O!{uA_I5{ojyl+dj4tc-NX~@O0>>j~mMIewJ(TxGJ zG*66-LVp#TIzI$nX#s(Gi> z1x%dfjR+L`vRm$#kuizOOB+V(a91W+}$xe#W^gQ;5B4)^*3c}r#9 zlMn5$Qj~pci@&C31pJ=-){i^xQI(+| zIeE%@*y0d%;B8&ni!|V^78&ch)Ww>C;hN|EEnJNZ(`dnl^9g>p*3x9hcd^8ay%<%)CS+RZI0OEu-pYNSpX9TH~LPIdHfa`Fcga?xrg(_^kKkI}+ON zRy@%iCjfl2W4>sw{+Ujh-<&`5yLM5K`-z!@8@uk0>JmWd)s@a;B?#f zz(4O(6{%{B`rI)q0(MU3xh5;Yc9L(5u=^@?%!$V?BzOM}ELSIEQg?!C(@jBMsjKZb zDo+;LD?;{UXyq}P1RInp70 zg8vg#GlQ$@>u=c#<>#Q7+gqt6gfEC`v_2qFd0G;sS@Y*HTlV5;zmvXa{z|38s{>X3 zvRdhmP|fYt3Fh3~+&I*G54nte?$1I7nZqyl15toZ5VekuyHfWhGb>QvM~x1gz4!hZ zi`%XDBUHLw&P^qkwJW#emy&G<0aZ{PE;PX*U$JZMIpZV68(fYQy%N~-*-k8`G zq@56q!1c{6DRVR+VZtTzd2M>$J}azgN!Qo9c8eDL=A1Kwc4dqf8Sk}3z*=cT{Dqxc z{86%fatuOAnMgai`Hy$pbm08H(PcbZRt=DW(w%#-K!5p~zGqSdveKa+TCUtZb+{3| zTBmzw3f`-F7}(kF)P!GPMTku!DFj~DWhkq#W<)0i1fb&!#|oAlN>2AqP>(lzdRpx& zqwg~Avwn9*{E)HDr)00fDd~I@T~=MHh^#G3e-RP{aT*tJC~NQ7xpJ_1m80AXrMJlrLKtZ&16u>@>}2o0M#q%V5QS@92?WJbNpQlpF*n! zhz3k-oZkprWZ-N`E7-R_-Rm{2|?ozoQV=vYa7V(%!|Tmgz1DYtG3NsDG9Zt*6r zg-(?=jD`v60d}7A`qBD_>92>f+lPCl$ANNAYotH%UU=3LAmvw*!!D51Qn&8w$e86%WP zWrTfqY&25v$5_Rb^Mo8$Nw+#6Va(4sVDfoIWnKC=(c2}%B^_zcmq(IlO98;Gr>0Cp zwavzTs43_1zuXTQK8mch+RASd*9c}oOpj-}&W$8#qB)Wms^w*m`ww(RRy3cId##_% z%QOcGfe|)aOMN~My}HAMxzdLFyH-6XuVE3c{9C4K=A&u2w5}2dl!SGaDn98wGSLxU z?hXj1RHN$slHtu*-N_Fbi+QC2;8+nX{HG-_-oS|D0Nr9j(t#wMHZg`32!O zyMi|70UyFGJll$$2_YTD&gj&`yfNXB`DKR0a~}E+F>JmzZMzo&a6Y=aB2Q}^&6L@0 zL-Wj($?A|sIlFJ!L2>hC@g^t%!;ZL_>J~1T-v?aT?dE8; z85A#Ac%&Ttau3fwnFYJlFWQ(gkp#PwHUO&=pRw`5lQMyR0zHOwDH;Ad`o5aZ_RWjuafI zGT3Y<`jy5-c3t`)5hA2KU{YBpUcUHEv7XM?G=6y$RQSwa`*7apm>04oS1RDB&x-I; zNHB%cgCPU;pN2h{JmyfPd*T5UN8~z^cBnAO%uI$iKmCI{rE4m@5^^W$j%-cokr=^< zZFCVWRv-W-FW{@$-xhba%oExIBsfv{fxeiJxIew0vR^P*V zdWkwfsw&C*W}|7(9jskYRGW7d2spW^5m?!y*Y*|gdRIEIrOQfWw1ek}C?!rl__~`X zX3A&Gl7kI#Q&9>Krdv^%gNrWBdMV1KTc*o*QigRPgu6g#saaBm`0_o`AHb>PJwwg< z$Z^N5*K)jFA5?Pq-jvJ(@0E@7F3A>k?sw_89ewv*5>$wjbQ}ZOf0%Ty+4DN+LM=u^ zZ>2qCOZM4W2?cEY$19Zyy@^PcYM$45bYRnX*tAs%Qw4T>Y_0~<62msSR$o>I8EXX8 z+60>Q4 z9~Vs}T|?orwx+b@gH*yl>s)Z%kH5zWMXD!1Ml3{iS^b`KpN+jl^7U2>8>`MLC@t;i z;yc`P8x#P!uXf8QkjRtH$r_i3aM2;<(6((K>SKtvK{-Zc^>OAYK%dOLsx z(tkn%W1+K3H{Ff<%vd?>CrNWxvBUZx=q)a*DJXMKtDxPDR-|f0Pss4bZ>X}D#zn%x z8ug7)C;ec@ebS<71%FTeyUXAaTBbxq;k&2T+c09I$dOzy8@9({b5$PwPjp&$MCzTW zqT6A)Ht|{2JME=$s0%k5OxyLP8*AHztAlQVe&}{S!v-Cu;GB60^OMV4Py4}*y;N$o zVL}a#1GWkSuAtrv?(%@YZ)BI~)O$5am)iCc_{dE{35x4d-5LUm<2kR$ii$J0$6w$+ zbQOX5ZfqVlIvkKC)qx2eNDRpt0@HbUc&%=EbdqmjIdDIr*PY%}GG~$6MddOWvuFPN zfN+OB2;V2;E>zXsX?tu3LPTLs!kFj|=Q|I^Q*HvLL57U)W^dXUV4(8D#7FmY`kYBV zm&=`0uB$i^jE@0p9^z3ECIq+5!; zBIX&r7E{{lGkWkebuPl)@RrnMb+?!DT(|y`Mxc$)pX;++xO2j~qdX~XPSmjV?>gjk zmue@nQiJ1gsBDb8l`EFKSi1F;0A&WsP^LZ@NSYDQN_~Z}HD>i{g}7@|(XEnN-fBnnd-2{j8e&T>fnwbH?vXaj;IYgT zj;pI&dG%1U4_x^>W@?{#?Jk2W=(e_a%2QL%CMB4o4OONeII$4^UBB}*+&vZ76)ByW zxwGeA;^vCNwD+gWGwdH%iGo5G_rby(IBCjw{4FDP1RA=S_6apw65y*i0&RwKR4(3C zIFxj{8?dai+sv;Rgt-MORDQKXFJq$<(7b+4c^V!2(scAUYwC|Di}!TLB|vf3kTDQO zG_wkyDpcqHwx0OjJ#`}$0b6iWAUI{h0c?@>xLnY7^@&q%bUZua;R8t56#1t#_RW~P zKKZW&#GCK}C-nKpQcN{=_YiLS=)+sRX9oAQE}?u}g+VwM2ufsD)C_S}%o zC$VFXgmJTNC7KO1C)aPKy-Zq0GAaapZx9x!uav(ssZg=jd*nYUv%TLV9gI zbi5`ce4@d#93GmmgQ-!PAXVLquW$S6YpWe15h}FrI|a@bd}E3EClRL$=}LGv;wU8x znlQ`cDqqGBU6bFtdue``i|@k&p6bNaMY(+ZaQ=M1Jn?%l6&>>Re5Y}XgI$iqOJ-pX z&!g@FpHxH3^q)|S&kwtJkHNaYe4<6A^Z4}J(ioSHRKBvdqSwWP62%lcy}wRBh_79$ z8*?7C>XLn7tKDa?#DYj%(M)(6BD7CQ&wXFw&D(gI65Vh0kB}#rHLeiZKA4hkruh`C z3EeE_Jk@-qd@)$~C7^s;%3rN~P|qGs0IBRBUlp@>&!DvTpe}83d08E;e@I@_Gc;tu z(;Wmw9uonEs#F#)O&30f$2epz8M6h9G2VS6H&dXOC@cDJN-{wGEK6w zvmfs2=Y4zh$#M5mSxI?Ux6bER2MEzW*5+LJ-Y|xjK)@!esejR}ae~r;fcT<$d`BIT zeG9K2ti-n6HfSE6-3NuaxxDzc7WkvZrFyx|F8z66Knd({-s~_J4yh9pFX^4g&wUCs zdxA}$D!t~H_FI-m*&jirZh`bxLI8#9st$D^dQL%;w^D}F^HS1A=kCVTD{bW?`+=Wc zs=OHWKGXMU$WsAEf(9a-FMypvVdE{F zW5Kfqz6H0FmnW1|y&_LI^7XJ%0WKGL=}mL|N1p2 z9~G56m`4vWT3f=!>ci#|L-%G)M3rA{aV3j{8)f4F#B<-6 z^lgdAqXXa|9Bkv?eR&j~9VO>=J#aM;=aoTFEfFy4jOOv}_Vo3ZT`9=9682S_LuJD! z>W1&r>V4IcUZKdeXqmx+PPN)-I>UOSPwijd>AzT?tsf^xoH9&{KuYej$4`=`(wy)IDzgR)hp$7OTHjLq8I2P6j?_tRkALO+sJ6vv$}Hb3sSeO$egVsDWbd`3 zk}juI%w(o^MMm_Ev6$rRg)nm{|_P!4o%I z1F3?Q(zOhSRO^hMsB)C_+<5$pt$wbNBi=`YI#=h{no$9&Myu|rh;lQxzxX;Ahvo}h ze$#p`66|CXKNSiTWCuedelwDhf~zk5!sRk%X`Mk|s{tDU=asc%V3Jp&}Y@C2Kt2B+*BJL4AOK9+5KAM4^(iX+~YFL&CE z{j9euQ`0Ng4G}CdA4x$r3Yx6_IqOc$Ki`tb@La2x+94l5OHH-I8qz z`h3R2)1%kZmZEB4q=vNmk4>T_y@DS;ieYXhXu`2CGvHmZsu9gsJ9jg`Tm%qvWKFS^~qOtH~MY7d9Jj1CGPsE4nIbO9O#pMakk{DQ*q!u~i7_|zLf$jL@&j%^2JZ2ENZ1-s z?kX}WcI%B5g`VZA-|GvQoC?yW16FzMH>J1#{*Nh2K%2!!s>jgK@H_Hv&XDGBCm8VO mLU29+gm(7)59ACl90lG)a;@uLd+T)$cr?|38z3Lr1pfy%L~=9$ literal 124641 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ą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%0D4)-KB>S7etooZ` z9`*|IXyhavtnte(J(?oeZs7`F{`j9~{p@86oBu^BR9o+vKKH_}yo~b;oto&+*H%FG z$YzyJ{ifv)D-E=Y5p#PcUP|@x8rAG2JQAF$L>&Pl#U;^`X??4Y@+~lsz)pthdG=4M zNjhnV*oR6Tu#yUY#D$eolT&4#>`%oghRiCfP2W;^YUO#k>38D}uvOmp0z6JkrCkh_ z-t?uNiF_=BEps$Sx|I|{_<1eE6rnQ~k1iA+Dy4@MxSfuia6z0Xd(Ldpt{Keo9k(Jq z;(t613rPqnuy^3NS?scRM1y*PJA?sq-h^?VcZ)e77HKEs18bZ}d%=`$k@J0Akb|cS zf@F@YIQFm3w+3;%LGnM4(&s=a@>ONXMN87Wa-@Q!lroRX-mLBj`Y-c_I6Uf54ZiP0 zQSn5TFVSRR@)!6~oknVBekD5lvcFAU`v;C@Yb|l*raQ$N$K9Zp(docg)P#9ty)l)B zou}x;x8spC4SK#~b4mWgbx&#>rv<|}gJ0~BezCF#p2^0mHPM%6$C$n%K^%5#`1wT_ zhetcT7#;t;-O(>fe2)EbZ9W^Mgyu9m+9oHrTpNM=s;^LW9HXkz!JZjzpq!}it0N9? zD7rpggv%vQM9~G>0fLDd4@-;@1(?{ca(ZM(m90+K;V(O)}039 zj~k-=m-_|hzO+mMg9LkLJ~z>(c$z9?(VJeBd;eI79Zqd+0YRGBpWPY~^pBbI9IU|~ z^F>;Ak^$JAxrhH*9r&GyFCVEph$01{w5DDwju#QQxeKV##a`pmNqgqrIB36akePm# zK{m!8UjflAqtZxJplWT)Px)9_oc>pbze#gkvQrQBP#L+pBo!YcmQ31Vxd(|kvgTQ{ z);6$@7rB^jt+(&%#8id+s>W!`kr)FxK0Utg^*f5nm8~?czWuxX(hTwcuQvg7ef5^1 zN*`CL;If?PI`!@YVy`yHZ}5k=OXlqzZTD5y(f)_2At@kDLsic0d=O;<_J|WwIu!q! zx218}I7qm7WX(~Zl~IJ>7PE$Hg44OXBwi()o_f7XADhpq4p&nymXdMnJBkvij99yS zol(10;O7ITPd96!Sn%t>P>>(Wajp;jtI(s1srh=j#)uyi#9IhAmyHkR4L`x@`R(w- zGAoDB!p-L+KgaobRB<5o;`%6t2Ey3B*Zvm^#(%Jrj-u1YvC_37V2HTMp>zYav%kXq zfXn(qWqX9vX)=?$D4S7vfbSkdDG|JPRGH?^#9nyi=DJ%SVj{I;k#9XF31czPp}pT& zh3%$!YPl=H*lBqM1UGLV&0$Fa-jB*-&y=NrQiVXjPxDuhTmmFPDS?u<%pMT9damf81X2FARYTkN^V|-=nOR zee0S4=@JDplj;5ww@-&%TbGrG(3pRGu-SQkP=D6hj{NodAO<^NI4%OgAWmO;S=2St z{o7PRO;V`co>!-h@1^%gA~##oTfD0LLXUk`=Z!X&Dw=k)pz2~|_@s}|Vwd9;=O7G;}kL_|>FL6=nlSWxD2$6p*9ejJBTqUy^jdD6+it>|@J!OjDv*M-e zjQ;g=d|p$d1Rv8Whv(inHkT#ik5^Nbe}+&?Ux3$}6aPvcG#9JQb0-54@=waOTTCsh}SvGo=gUegAD&A$$IN8E7U$9M-x zhk1k)?Qx>WAXVN;nX|wPtJAh``HSFLjE)`GQeZRlug~0a1Tlf)lXR+fxUn7C)RB}j z7Q*sv1NufxI;Aa2ndmi|{9y9eqJv6SWFi>hBR$uX%P=F^lz{NqCtvVKXPNV1t!R8$U*mWu{N5Uw_ z1UcxAc~fjTuk2Unyb)~yKnvzu89HRJs|ervW(Zo^P*G+j+nM=NU3nM>Uht{Ej7^Gs zEDZDQHX+c)DxK3Ig!k%{oxLvQG?KD-Z7fj{P~F?9Wtpb!kF_uC$P}cCq*Qjsw`-I7 z3`MgqDn#$%4~3R)vZ9J2E*#aAk&SrT_D`_9-HUjAOx?gR@y9!4B{VeA+Kq(w+hdq= zQ87*cx~K@7Vs<7QyZX71!2jWcla2PYDSk-eIR7FtGt1yjICB)JeEBl(EW+iL@_T|} zV2x9&K{XuTM5URztd-cb3E5=hu&7}bv4M+%QiPb-9EhCuf(kyby68&J(6 z+jTZQgQ-^d)_pfeI}U=mDu2ol!pVYm;}(KI&98B0uzQ!6krv-_<$!V!^sHWapz0dt zvTt32t{uH&i9btbF}FQNx<;>JLgw_gFKV16z+Hs?RZy7xiu$#6Gz0=<(nU-?dFy+8 zQb0(N8C3bcw9^SdSeA*@px7>ZJ$qSb75~M0UGjWgsmoWaoYH~fb;Fw8SIVeTQi1Ky zR`H9KvWSf`N2okrhdoaNJ)-UdZ?)gc)k^RpUk#atE4W$JYq%h^ymH#*$<^P8!%fTu)D#^~j&L)6-SrV=RGHStfIZ`)MFk^;F9! z#I1SVgMQ2Hx0S0VRHM$U&I{NhEbQ7+U}lK)~hV~xib zctfQ^Ef~aUtRZSy-QN>G1+r7IB5@Id*?&bRQHtb);#YmmuOYO$w12z1M(MOrw&zHy zX+SI5C_3JXhi0fd@FtJEiN%8o1#v!@*Qus|z{0Eyjgm-m_}7l+?K7qXoBcs*B+ppD z6(~cpVnZ||sbnA`L3$`q2ucwu0t%LVq=Gh#K^YZcg9Ld@?nEqlP<$q@Rq<%Q^Q4th z!8^iVK4|0N!15@9gBVR|OZ~6KIe`HjKN87=?J%01^22@nkE%A5(nC|7_KfViUkC84 zbWK@)=reXKoFsxkUUrnJwp4!ng8KGkSKZBpW-e<%GBaGEL((j;GHUwl^Sh2B*54xx@QBK@dL zXM#NK-@(O7GL1^If#_{S(hv?A{ENl6M*(3u05M+o@+)jOIv}L>bKSzDeni4#s&mKn z>3F{$Tc?N=QttX^XB2Mz2VmWHRDIfmjInwzdpNqtQ-`ia0I{oKrYH;Dxe14wEM8b1-+3t!S`yI+TI zn}oW;%7rivCmEaY9+9r1rdG?Mk@}zMX(03_f|{@)f3)J5qIi8olt;)A@6js%U_YT4 zlCGA4&E%2O=dhFpoS}v|DEO{jBK1Cl-gy6Dr~MvRfdY%~ z-V(UU^)JO^O5cZW*V-bQH{6s2Ofi^cj`gv?ZB?J#;X(*U_2mQM5j^#g!x(fUjTGG* zfMWFU72R%gD)sTC1+W80ER|JWqXo%l=q#$cW3u~#WpJq@4~^aBZh;_9Rzri*6nxUq zw8`~H%-Qe{v_^fLO`d*8Gr8G_FO+{;p$6xu3zn#}`ygnd3&@oVT8I3N6x*!ijKaCC zG0IgKsd#t;Rwe{KJSS@U%nI^!L4j7GCjG__pWY4@-IK|YK5B^Ujf2utA#WcS{6 z$@Af-Vt7hP{CsYl_FRw$k3n{z_vgZpr^*j5@_}+8p{C{CV5*Zjudo1zP9p~JoVA)s zDS3#^z#BmSXW|H^#BO6_HJK+A3 zF1p_4t}j$UwokN8cn?UG=6EC_7t(O$yZ~W zGQ1H~BQrQsR?B`)G@Z1WD-`PNl?MY3i$(=P_~cxvykZ{-q>xGAg`-ElY8<=um!wkv zk2>~9KU5=dnA4l|bXFGYb$%IJt(hH8g~Fu&hH1CHeV3m*i1aToVT?g*h93UkS^y_| zKa9h?3Mjsd>CS~}^??j1N)Rg7l=+@m5Kp@M0y8ke^=x5P1hRf(Zzq@rDYfi(mD++ z2LaMCjg8GGSTTaILzMJ;)(333TU8G|>#yxbprf_Ms4dh(=#58!UfFC;zr#IS-xb98eGT_u4#iWO6!SAxSVbENZy^ISvk1ndPJVR> ziM}NhD;mw4LDcdDX`MU_`s|5HP2M�NY>LlTc!^KuQhKF_i#c>4Id9S)&42R5@#q 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 -# -if [ $# -eq 0 ]; then - echo "Usage: " - echo " sudo ./addECRsecret.sh " -fi - -PROJECT=$1 - -function ocLogin() { - # Log the user into OpenShift if they are not already logged in - oc whoami &> /dev/null - if [ $? -ne 0 ]; then - echo "Not logged into Openshift. Now logging in." - oc login - oc version - else - echo "Already logged into OpenShift as `oc whoami`" - fi -} -ocLogin - - -# Switch to the project -oc project ${PROJECT} &> /dev/null -if [ $? -ne 0 ]; then - echo "The project ${PROJECT} does not exist. Run the prepareProject.sh script to create an OpenShift project for deploying the Solace message broker" -fi - -# Create an OpenShift Secret to contain the AWS ECR login credentials -# -SECRET_FILE=/root/secret-aws-ecr.yml - -echo "Configure access to AWS Elastic Container Registry, Logging into AWS ECR..." -$(aws ecr get-login --no-include-email) - -dockerconfigjson_base64=`echo -n "$(cat /root/.docker/config.json)" | base64 | tr -d '\n'` -echo -n \ -"--- -kind: Secret -apiVersion: v1 -metadata: - name: aws-ecr -data: - .dockerconfigjson: $dockerconfigjson_base64 -type: kubernetes.io/dockerconfigjson -" \ -> $SECRET_FILE - - -# Configure the AWS ECR credentials secret for each required OpenShift service account -# -echo "Configuring AWS ECR credentials for each required service account..." -serviceAccounts=(default deployer builder) - -found=$(oc get secrets -n $PROJECT | grep aws-ecr | wc -l) -if [[ $found -eq 0 ]]; then - oc create -f /root/secret-aws-ecr.yml -n $PROJECT - for sa in ${serviceAccounts[@]}; do - oc secrets add serviceaccount/$sa secrets/aws-ecr --for=pull -n $PROJECT - echo "ECR secret added to service account $sa" - done -else - oc replace -f ${SECRET_FILE} -n $PROJECT -fi diff --git a/scripts/configureAWSOpenShift.sh b/scripts/configureAWSOpenShift.sh deleted file mode 100755 index 2828beb..0000000 --- a/scripts/configureAWSOpenShift.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/sh -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -################################################# -# Run this script from the ansible-configserver # -################################################# - -# The purpose of this script is to configure to fully integrate the OpenShift environment to allow OpenShift to provision AWS resources: -# - Configure AWS IAM role to allow OpenShift to provision resources -# - Re-configure OpenShift Masters and OpenShift Nodes to make OpenShift aware of AWS deployment specifics - -# First check all required env variables have been defined -if [[ -z "$NESTEDOPENSHIFTSTACK_STACKNAME" || -z "$VPC_STACKNAME" || -z "$AWS_ACCESS_KEY_ID" || -z "$AWS_SECRET_ACCESS_KEY" ]]; then - echo "Must provide all following variables in environment. Example (substitute your own parameters!): - -export NESTEDOPENSHIFTSTACK_STACKNAME=XXXXXXXXXXXXXXXXXXXXX -export VPC_STACKNAME=XXXXXXXXXXXXXXXXXXXXX -export AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXXX -export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXX - -You can get the stack names e.g.: from the CloudFormation page of the AWS services console, -see the 'Overview' tab of the *nested* stack which includes your VPC or OpenShiftStack deployment. -You can get the access keys from the AWS services console IAM > Users > Security credentials. - " 1>&2 - exit 1 -fi -REGION=`curl -s http://instance-data/latest/meta-data/placement/availability-zone | sed 's/[a-z]$//'` # use current region - -# Reconfigure AWS ('Setup') IAM Role created by OpenShift QuickStart - -# adding the required AWS IAM policies to the ‘Setup Role’ (IAM) used by the RedHat QuickStart to deploy OpenShift to AWS. -# This IAM Role is also used by OpenShift to authenticate / authorize with AWS when OpenShift. -echo "Reconfiguring AWS ('Setup') IAM Role" -AWS_IAM_ROLE_NAME=`aws cloudformation describe-stack-resources --region $REGION --stack-name $NESTEDOPENSHIFTSTACK_STACKNAME --logical-resource-id SetupRole --query StackResources[0].PhysicalResourceId --output text` -if [[ -z "$AWS_IAM_ROLE_NAME" ]]; then - echo "Couldn't identify the resource ID of the AWS ('Setup') IAM Role. Verify the required env variables are exported and valid: -NESTEDOPENSHIFTSTACK_STACKNAME, VPC_STACKNAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY" 1>&2 - exit 1 -fi -declare -a POLICIES=("AmazonEC2FullAccess" "AWSLambdaFullAccess" "IAMFullAccess" "AmazonS3FullAccess" "AmazonVPCFullAccess" "AWSKeyManagementServicePowerUser" "AmazonRoute53FullAccess") -for policy in "${POLICIES[@]}" -do - echo "Attaching IAM policy $policy to Role: ${AWS_IAM_ROLE_NAME=}" - aws iam attach-role-policy --region $REGION --role-name ${AWS_IAM_ROLE_NAME} --policy-arn "arn:aws:iam::aws:policy/$policy" -done -echo - -# Update OpenShift Nodes (EC2 instances) -echo "Updating OpenShift Nodes (EC2 instances)" -OPENSHIFT_NODES_LIST=`aws ec2 describe-instances --region $REGION --filters "Name=tag:aws:cloudformation:stack-name,Values=$NESTEDOPENSHIFTSTACK_STACKNAME" --filters Name="tag:Name",Values="*nodes*" --query Reservations[].Instances[].PrivateIpAddress | awk -F'"' '{print $2}' | paste -sd " " -` -if [[ -z "$OPENSHIFT_NODES_LIST" ]]; then - echo "Couldn't identify OpenShift nodes list. Verify the required env variables are exported and valid: -NESTEDOPENSHIFTSTACK_STACKNAME, VPC_STACKNAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY" 1>&2 - exit 1 -fi -for node in $OPENSHIFT_NODES_LIST -do - sudo ssh $node bash -c "' - echo \"AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY\" >> /etc/sysconfig/atomic-openshift-node - # Depending on OpenShift version 10+ or lower... see https://docs.openshift.com/container-platform/v.vv/install_config/master_node_configuration.html - if [ `oc version | grep oc | awk -F "." '{ print $2 }'` -gt 9 ] ; then - systemctl restart atomic-openshift-node - else - systemctl restart atomic-openshift-node.service - fi - '" - echo Configured node $node -done -echo - -# Update OpenShift Masters (EC2 instances) -echo "Updating OpenShift Masters (EC2 instances)" -OPENSHIFT_MASTERS_LIST=`aws ec2 describe-instances --region $REGION --filters "Name=tag:aws:cloudformation:stack-name,Values=$NESTEDOPENSHIFTSTACK_STACKNAME" --filters Name="tag:Name",Values="*master*" --query Reservations[].Instances[].PrivateIpAddress | awk -F'"' '{print $2}' | paste -sd " " -` -if [[ -z "$OPENSHIFT_MASTERS_LIST" ]]; then - echo "Couldn't identify OpenShift masters list. Verify the required env variables are exported and valid: -NESTEDOPENSHIFTSTACK_STACKNAME, VPC_STACKNAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY" 1>&2 - exit 1 -fi -for node in $OPENSHIFT_MASTERS_LIST -do - sudo ssh $node bash -c "' - echo \"AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} -AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} \" >> /etc/sysconfig/atomic-openshift-master - echo \"AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} -AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} \" >> /etc/sysconfig/atomic-openshift-master-api - echo \"AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} -AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} \" >> /etc/sysconfig/atomic-openshift-master-controllers - # Depending on OpenShift version 10+ or lower... see https://docs.openshift.com/container-platform/v.vv/install_config/master_node_configuration.html - if [ `oc version | grep oc | awk -F "." '{ print $2 }'` -gt 9 ] ; then - master-restart api - master-restart controllers - else - systemctl restart atomic-openshift-master-api atomic-openshift-master-controllers - fi - '" - echo Configured master $node -done -echo - -echo Configuration of OpenShift for AWS is complete. -echo -echo Use one of the Masters listed above to proceed with a deployment. - - - diff --git a/scripts/copySolaceImageToECR.sh b/scripts/copySolaceImageToECR.sh deleted file mode 100755 index 400d81e..0000000 --- a/scripts/copySolaceImageToECR.sh +++ /dev/null @@ -1,136 +0,0 @@ -#!/bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# The purpose of this script is to: -# - take a URL to a Solace message broker docker container -# - validate the container against known MD5 -# - load the container to create a local instance -# - upload the instance into AWS Elastic Container Registry -# - clean up load docker - -OPTIND=1 # Reset in case getopts has been used previously in the shell. - -exists() -{ - command -v "$1" >/dev/null 2>&1 -} - -# Initialize our own variables: -solace_url="" - -verbose=0 - -while getopts "u:r:" opt; do - case "$opt" in - u) solace_url=$OPTARG - ;; - r) repository_url=$OPTARG - ;; - esac -done - -shift $((OPTIND-1)) -[ "$1" = "--" ] && shift - -verbose=1 -echo "`date` INFO: solace_url=$solace_url, repository_url=$repository_url ,Leftovers: $@" - -solace_directory=. - -echo "########################################################################" -if [[ ${solace_url} == *"em.solace.com"* ]]; then - wget -q -O solace-redirect ${solace_url} - wget -q -O ${solace_directory}/solace-redirect ${solace_url} || echo "There has been an issue with downloading the redirect" - REAL_LINK=`egrep -o "https://[a-zA-Z0-9\.\/\_\?\=%]*" ${solace_directory}/solace-redirect` - LOAD_NAME="`echo $REAL_LINK | awk -v FS="(download/|?)" '{print $2}'`" - # a redirect link provided by solace - wget -O ${solace_directory}/solos.info -nv https://products.solace.com/download/${LOAD_NAME}_MD5 -elif [[ ${solace_url} == *"solace.com/download"* ]]; then - REAL_LINK=${solace_url} - # the new download url - wget -O ${solace_directory}/solos.info -nv ${solace_url}_MD5 -else - REAL_LINK=${solace_url} - # an already-existing load (plus its md5 file) hosted somewhere else (e.g. in an s3 bucket) - wget -O ${solace_directory}/solos.info -nv ${solace_url}.md5 -fi - -IFS=' ' read -ra SOLOS_INFO <<< `cat ${solace_directory}/solos.info` -MD5_SUM=${SOLOS_INFO[0]} -SolOS_LOAD=${SOLOS_INFO[1]} -if [ -z ${MD5_SUM} ]; then - echo "`date` ERROR: Missing md5sum for the Solace load" | tee /dev/stderr - exit 1 -fi -echo "`date` INFO: Reference md5sum is: ${MD5_SUM}" - -echo "`date` INFO: Download from URL provided and validate" -wget -q -O ${solace_directory}/${SolOS_LOAD} ${REAL_LINK} - -LOCAL_OS_INFO=`md5sum ${SolOS_LOAD}` -IFS=' ' read -ra SOLOS_INFO <<< ${LOCAL_OS_INFO} -LOCAL_MD5_SUM=${SOLOS_INFO[0]} -if [ ${LOCAL_MD5_SUM} != ${MD5_SUM} ]; then - echo "`date` ERROR: Possible corrupt Solace load, md5sum do not match" | tee /dev/stderr - exit 1 -else - echo "`date` INFO: Successfully downloaded ${SolOS_LOAD}" -fi - -echo "`date` INFO: LOAD DOCKER IMAGE INTO LOCAL REGISTRY" -echo "########################################################################" -if exists docker; then - echo 'docker exists!' -else - echo 'docker not found, installing!' - # following https://docs.docker.com/install/linux/docker-ce/centos/#install-docker-ce-1 - sudo yum install -y yum-utils - sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo - sudo yum makecache fast - sudo yum -y install docker-ce - sudo systemctl start docker -fi - -if [ "`sudo docker images "solace-*" -q`" ] ; then - echo "`date` INFO: Removing existing images first..." - sudo docker rmi -f `sudo docker images "solace-*" -q` -fi -sudo docker load -i ${solace_directory}/${SolOS_LOAD} - -local_repo=`sudo docker images "solace-*" | grep solace` -echo "`date` INFO: Current docker images are:" -echo ${local_repo} - -repoName=`echo $local_repo | awk '{print$1}'` -tag=`echo $local_repo | awk '{print$2}'` -imageId=`echo $local_repo | awk '{print$3}'` - -echo "`date` INFO: PUSH SOLACE MESSAGE BROKER IMAGE INTO AWS Elastic Container REGISTRY" -echo "########################################################################" -sudo docker rmi ${imageId} ${repository_url}:${tag} -sudo docker push ${repository_url}:${tag} - -echo "`date` INFO: CLEANUP" -echo "########################################################################" - -sudo docker push ${repository_url}:${tag} -sudo docker rmi ${imageId} - -echo "########################################################################" -echo "`date` INFO: Record the image reference you will need to for next steps" -echo "SOLOS_IMAGE_REPO=${repository_url}" -echo "SOLOS_IMAGE_TAG=${tag}" \ No newline at end of file diff --git a/scripts/prepareDeleteAWSOpenShift.sh b/scripts/prepareDeleteAWSOpenShift.sh deleted file mode 100755 index ef85555..0000000 --- a/scripts/prepareDeleteAWSOpenShift.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/sh -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -################################################# -# Run this script from the ansible-configserver # -################################################# - -# The purpose of this script is to cleanup before deleting an AWS OpenShift environment to avoid delete failed or leaking of resources: -# - Release AWS IAM roles -# - Release subscriptions - -# First check all required env variables have been defined -if [[ -z "$NESTEDOPENSHIFTSTACK_STACKNAME" || -z "$AWS_ACCESS_KEY_ID" || -z "$AWS_SECRET_ACCESS_KEY" ]]; then - echo "Must provide all following variables in environment. Example (substitute your own parameters!): - -export NESTEDOPENSHIFTSTACK_STACKNAME=XXXXXXXXXXXXXXXXXXXXX -export AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXXX -export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXX - " 1>&2 - exit 1 -fi -REGION=`curl -s http://instance-data/latest/meta-data/placement/availability-zone | sed 's/[a-z]$//'` # use current region - -# Remove AWS IAM policies from ‘Setup Role’ (IAM) used by the RedHat QuickStart to deploy OpenShift to AWS. -echo "Releasing policies from AWS ('Setup') IAM Role" -AWS_IAM_ROLE_NAME=`aws cloudformation describe-stack-resources --region $REGION --stack-name $NESTEDOPENSHIFTSTACK_STACKNAME --logical-resource-id SetupRole --query StackResources[0].PhysicalResourceId --output text` -if [[ -z "$AWS_IAM_ROLE_NAME" ]]; then - echo "Couldn't identify the resource ID of the AWS ('Setup') IAM Role. Verify the required env variables are exported and valid: -NESTEDOPENSHIFTSTACK_STACKNAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY" 1>&2 - exit 1 -fi -declare -a POLICIES=("AmazonEC2FullAccess" "AWSLambdaFullAccess" "IAMFullAccess" "AmazonS3FullAccess" "AmazonVPCFullAccess" "AWSKeyManagementServicePowerUser" "AmazonRoute53FullAccess") -for policy in "${POLICIES[@]}" -do - echo "Detaching IAM policy $policy from Role: ${AWS_IAM_ROLE_NAME=}" - aws iam detach-role-policy --region $REGION --role-name ${AWS_IAM_ROLE_NAME} --policy-arn "arn:aws:iam::aws:policy/$policy" -done -echo - -# Unregister subscriptions -echo "Releasing RedHat OpenShift subscriptions" -OPENSHIFT_INSTANCES_LIST=`aws ec2 describe-instances --region $REGION --filters "Name=tag:aws:cloudformation:stack-name,Values=$NESTEDOPENSHIFTSTACK_STACKNAME" --query Reservations[].Instances[].PrivateIpAddress | awk -F'"' '{print $2}' | paste -sd " " -` -if [[ -z "$OPENSHIFT_INSTANCES_LIST" ]]; then - echo "Couldn't identify OpenShift instances list. Verify the required env variables are exported and valid: -NESTEDOPENSHIFTSTACK_STACKNAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY" 1>&2 - exit 1 -fi -for node in $OPENSHIFT_INSTANCES_LIST -do - sudo ssh -o StrictHostKeyChecking=no $node bash -c "' - subscription-manager remove --all; subscription-manager unregister - '" - echo Processed $node -done -echo -echo Cleanup of OpenShift for AWS is complete. You can proceed with deleting the stack in CloudFormation. - - diff --git a/templates/eventbroker_ha_template.yaml b/templates/eventbroker_ha_template.yaml index f6e31c7..0fa1254 100644 --- a/templates/eventbroker_ha_template.yaml +++ b/templates/eventbroker_ha_template.yaml @@ -16,7 +16,7 @@ objects: app.kubernetes.io/name: pubsubplus type: Opaque data: - username_admin_password: "${EVENTBROKER_ADMIN_PASSWORD}" + username_admin_password: "${BROKER_ADMIN_PASSWORD}" - kind: ConfigMap apiVersion: v1 @@ -27,226 +27,256 @@ objects: app.kubernetes.io/name: pubsubplus data: init.sh: |- - # export username_admin_passwordfilepath=/mnt/disks/secrets/username_admin_password - export username_admin_password=`cat /mnt/disks/secrets/username_admin_password` - export username_admin_globalaccesslevel=admin - export service_ssh_port='2222' - export service_webtransport_port='8008' - export service_webtransport_tlsport='1443' - export service_semp_tlsport='1943' - export logging_debug_output=all - export system_scaling_maxconnectioncount="100" - # [TODO] KBARR not using correct method of finding ordinal until we bump min Kubernetes release above 1.8.1 - # https://github.com/kubernetes/kubernetes/issues/40651 - # node_ordinal=$(STATEFULSET_ORDINAL) - IFS='-' read -ra host_array <<< $(hostname) - node_ordinal=${host_array[-1]} - if [[ ! -z `echo $STATEFULSET_NAMESPACE` ]]; then - namespace=`echo $STATEFULSET_NAMESPACE` - else - namespace=default - fi - service="${DEPLOYMENT_NAME}-pubsubplus" - # Deal with the fact we cannot accept "-" in routre names - service_name=$(echo ${service} | sed 's/-//g') - export routername=$(echo $(hostname) | sed 's/-//g') - export redundancy_enable=yes - export configsync_enable=yes - export redundancy_group_password=`cat /mnt/disks/secrets/username_admin_password` - export redundancy_group_node_${service_name}0_nodetype=message_routing - export redundancy_group_node_${service_name}0_connectvia=${service}-0.${service}-discovery.${namespace}.svc - export redundancy_group_node_${service_name}1_nodetype=message_routing - export redundancy_group_node_${service_name}1_connectvia=${service}-1.${service}-discovery.${namespace}.svc - export redundancy_group_node_${service_name}2_nodetype=monitoring - export redundancy_group_node_${service_name}2_connectvia=${service}-2.${service}-discovery.${namespace}.svc + export username_admin_passwordfilepath="/mnt/disks/secrets/username_admin_password" + export username_admin_globalaccesslevel=admin + export service_ssh_port='2222' + export service_webtransport_port='8008' + export service_webtransport_tlsport='1443' + export service_semp_tlsport='1943' + export logging_debug_output=all + export system_scaling_maxconnectioncount="100" + # Uncomment if using TLS configuration + # cat /mnt/disks/certs/server/tls.key /mnt/disks/certs/server/tls.crt > /dev/shm/server.cert + # export tls_servercertificate_filepath="/dev/shm/server.cert" + IFS='-' read -ra host_array <<< $(hostname) + node_ordinal=${host_array[-1]} + if [[ ! -z `echo $STATEFULSET_NAMESPACE` ]]; then + namespace=`echo $STATEFULSET_NAMESPACE` + else + namespace=default + fi + service="${DEPLOYMENT_NAME}-pubsubplus" + # Deal with the fact we cannot accept "-" in routre names + service_name=$(echo ${service} | sed 's/-//g') + export routername=$(echo $(hostname) | sed 's/-//g') + export redundancy_enable=yes + export configsync_enable=yes + export redundancy_authentication_presharedkey_key=`cat /mnt/disks/secrets/username_admin_password | awk '{x=$0;for(i=length;i<51;i++)x=x "0";}END{print x}' | base64` # Right-pad with 0s to 50 length + export service_redundancy_firstlistenport='8300' + export redundancy_group_node_${service_name}0_nodetype=message_routing + export redundancy_group_node_${service_name}0_connectvia=${service}-0.${service}-discovery.${namespace}.svc:${service_redundancy_firstlistenport} + export redundancy_group_node_${service_name}1_nodetype=message_routing + export redundancy_group_node_${service_name}1_connectvia=${service}-1.${service}-discovery.${namespace}.svc:${service_redundancy_firstlistenport} + export redundancy_group_node_${service_name}2_nodetype=monitoring + export redundancy_group_node_${service_name}2_connectvia=${service}-2.${service}-discovery.${namespace}.svc:${service_redundancy_firstlistenport} - case ${node_ordinal} in - 0) - export nodetype=message_routing - export redundancy_matelink_connectvia=${service}-1.${service}-discovery.${namespace}.svc - export redundancy_activestandbyrole=primary - ;; - 1) - export nodetype=message_routing - export redundancy_matelink_connectvia=${service}-0.${service}-discovery.${namespace}.svc - export redundancy_activestandbyrole=backup - ;; - 2) - export nodetype=monitoring - ;; - esac + case ${node_ordinal} in + 0) + export nodetype=message_routing + export redundancy_matelink_connectvia=${service}-1.${service}-discovery.${namespace}.svc + export redundancy_activestandbyrole=primary + ;; + 1) + export nodetype=message_routing + export redundancy_matelink_connectvia=${service}-0.${service}-discovery.${namespace}.svc + export redundancy_activestandbyrole=backup + ;; + 2) + export nodetype=monitoring + ;; + esac - setup-config-sync.sh: |- - #!/bin/bash - APP=`basename "$0"` - # [TODO] KBARR not using correct method of finding ordinal until we bump min Kubernetes release above 1.8.1 - # https://github.com/kubernetes/kubernetes/issues/40651 - # node_ordinal=$(STATEFULSET_ORDINAL) - IFS='-' read -ra host_array <<< $(hostname) - node_ordinal=${host_array[-1]} - echo "`date` INFO: ${APP}-node ordinal: ${node_ordinal}" - password=`cat /mnt/disks/secrets/username_admin_password` - loop_guard=60 - pause=10 - count=0 + startup-broker.sh: |- + #!/bin/bash + APP=`basename "$0"` + IFS='-' read -ra host_array <<< $(hostname) + node_ordinal=${host_array[-1]} + echo "`date` INFO: ${APP}-Node ordinal: ${node_ordinal}" + echo "`date` INFO: ${APP}-Waiting for management API to become available" + password=`cat /mnt/disks/secrets/username_admin_password` + loop_guard=60 + pause=10 + count=0 + while [ ${count} -lt ${loop_guard} ]; do + if /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 -t ; then + break + fi + run_time=$((${count} * ${pause})) + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Management API not yet accessible" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Solace Management API never came up" >&2 + exit 1 + fi + # Uncomment if using TLS configuration + # rm /dev/shm/server.cert # remove as soon as possible + # cert_results=$(curl --write-out '%{http_code}' --silent --output /dev/null -k -X PATCH -u admin:${password} https://localhost:1943/SEMP/v2/config/ \ + # -H "content-type: application/json" \ + # -d "{\"tlsServerCertContent\":\"$(cat /mnt/disks/certs/server/tls.key /mnt/disks/certs/server/tls.crt | awk '{printf "%s\\n", $0}')\"}") + # if [ "${cert_results}" != "200" ]; then + # echo "`date` ERROR: ${APP}-Unable to set the server certificate, exiting" >&2 + # exit 1 + # fi + # echo "`date` INFO: ${APP}-Server certificate has been configured" + # for non-monitor nodes setup redundancy and config-sync + if [ "${node_ordinal}" != "2" ]; then resync_step="" role="" - #exclude monitor node from config-sync check - if [ "${node_ordinal}" != "2" ]; then - while [ ${count} -lt ${loop_guard} ]; do - role_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "" \ - -v "/rpc-reply/rpc/show/redundancy/active-standby-role[text()]"` - run_time=$((${count} * ${pause})) - case "`echo ${role_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -`" in - "Primary") - role="primary" + count=0 + while [ ${count} -lt ${loop_guard} ]; do + role_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "" \ + -v "/rpc-reply/rpc/show/redundancy/active-standby-role[text()]"` + run_time=$((${count} * ${pause})) + case "`echo ${role_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -`" in + "Primary") + role="primary" + break + ;; + "Backup") + role="backup" + break + ;; + esac + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, got ${role_results} for this node's active-standby role" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Could not determine this node's active-standby role" >&2 + exit 1 + fi + # Determine local activity + count=0 + echo "`date` INFO: ${APP}-Management API is up, determined that this node's active-standby role is: ${role}" + while [ ${count} -lt ${loop_guard} ]; do + online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "" \ + -v "/rpc-reply/rpc/show/redundancy/virtual-routers/${role}/status/activity[text()]"` + local_activity=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` + run_time=$((${count} * ${pause})) + case "${local_activity}" in + "Local Active") + echo "`date` INFO: ${APP}-Node activity status is Local Active, after ${run_time} seconds" + # We should only be here on new cluster create, if not likely a bug + # Need to issue assert master to get back into sync" + resync_step="assert-master" break ;; - "Backup") - role="backup" + "Mate Active") + echo "`date` INFO: ${APP}-Node activity status is Mate Active, after ${run_time} seconds" + # This is normal state if we are backup or recreated later on + # will issue a resync master to get back into sync + resync_step="resync-master" break ;; - esac - ((count++)) - echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Management API not yet accessible" - sleep ${pause} - done - if [ ${count} -eq ${loop_guard} ]; then - echo "`date` ERROR: ${APP}-Broker Management API never came up" >&2 - exit 1 - fi - # Determine local activity + esac + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Local activity state is: ${local_activity}" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Local activity state never become Local Active or Mate Active" >&2 + exit 1 + fi + # If we need to assert master, then we need to wait for mate to reconcile + if [ "${resync_step}" = "assert-master" ]; then count=0 - echo "`date` INFO: ${APP}-Management API is up, determined that this node's active-standby role is: ${role}" + echo "`date` INFO: ${APP}-Waiting for mate activity state to be 'Standby'" while [ ${count} -lt ${loop_guard} ]; do - online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ + online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ -q "" \ - -v "/rpc-reply/rpc/show/redundancy/virtual-routers/${role}/status/activity[text()]"` - local_activity=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` + -v "/rpc-reply/rpc/show/redundancy/virtual-routers/${role}/status/detail/priority-reported-by-mate/summary[text()]"` + mate_activity=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` run_time=$((${count} * ${pause})) - case "${local_activity}" in - "Local Active") - echo "`date` INFO: ${APP}-Node activity status is Local Active, after ${run_time} seconds" - # We should only be here on new cluster create, if not likely a bug - # Need to issue assert master to get back into sync" - resync_step="assert-master" - break - ;; - "Mate Active") - echo "`date` INFO: ${APP}-Node activity status is Mate Active, after ${run_time} seconds" - # This is normal state if we are backup or recreated later on - # will issue a resync master to get back into sync - resync_step="resync-master" + case "${mate_activity}" in + "Standby") + echo "`date` INFO: ${APP}-Activity state reported by mate is Standby, after ${run_time} seconds" break ;; esac ((count++)) - echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Local activity state is: ${local_activity}" + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Mate activity state is: ${mate_activity}, not yet in sync" sleep ${pause} done if [ ${count} -eq ${loop_guard} ]; then - echo "`date` ERROR: ${APP}-Local activity state never become Local Active or Mate Active" >&2 + echo "`date` ERROR: ${APP}-Mate not in sync, never reached Standby" >&2 exit 1 fi - - # If we need to assert master, then we need to wait for mate to reconcile - if [ "${resync_step}" = "assert-master" ]; then - count=0 - echo "`date` INFO: ${APP}-Waiting for mate activity state to be 'Standby'" - while [ ${count} -lt ${loop_guard} ]; do - online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "" \ - -v "/rpc-reply/rpc/show/redundancy/virtual-routers/${role}/status/detail/priority-reported-by-mate/summary[text()]"` - mate_activity=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` - run_time=$((${count} * ${pause})) - case "${mate_activity}" in - "Standby") - echo "`date` INFO: ${APP}-Activity state reported by mate is Standby, after ${run_time} seconds" - break - ;; - esac - ((count++)) - echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Mate activity state is: ${mate_activity}, not yet in sync" - sleep ${pause} - done - if [ ${count} -eq ${loop_guard} ]; then - echo "`date` ERROR: ${APP}-Mate not in sync, never reached Standby" >&2 - exit 1 - fi - fi # if assert-master - # Ensure Config-sync connection state is Connected before proceeding - count=0 - echo "`date` INFO: ${APP}-Waiting for config-sync connected" - while [ ${count} -lt ${loop_guard} ]; do - online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "" \ - -v "/rpc-reply/rpc/show/config-sync/status/client/connection-state"` - connection_state=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` - run_time=$((${count} * ${pause})) - case "${connection_state}" in - "Connected") - echo "`date` INFO: ${APP}-Config-sync connection state is Connected, after ${run_time} seconds" - break - ;; - esac - ((count++)) - echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Config-sync connection state is: ${connection_state}, not yet in Connected" - sleep ${pause} - done - if [ ${count} -eq ${loop_guard} ]; then - echo "`date` ERROR: ${APP}-Config-sync connection state never reached Connected" >&2 - exit 1 - fi - # Now can issue {resync_step} command - echo "`date` INFO: ${APP}-Initiating ${resync_step}" - /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "<${resync_step}>" - /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "<${resync_step}>default" - # Wait for config-sync results - count=0 - echo "`date` INFO: ${APP}-Waiting for config-sync connected" - while [ ${count} -lt ${loop_guard} ]; do - online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ - -q "" \ - -v "/rpc-reply/rpc/show/config-sync/status/oper-status"` - confsyncstatus_results=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` - run_time=$((${count} * ${pause})) - case "${confsyncstatus_results}" in - "Up") - echo "`date` INFO: ${APP}-Config-sync is Up, after ${run_time} seconds" - break - ;; - esac - ((count++)) - echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Config-sync is: ${confsyncstatus_results}, not yet Up" - sleep ${pause} - done - if [ ${count} -eq ${loop_guard} ]; then - echo "`date` ERROR: ${APP}-Config-sync never reached state \"Up\"" >&2 - exit 1 - fi - fi # if not monitor - echo "`date` INFO: ${APP}-Solace Event Broker bringup is complete for this node." - exit 0 + fi # if assert-master + # Ensure Config-sync connection state is Connected before proceeding + count=0 + echo "`date` INFO: ${APP}-Waiting for config-sync connected" + while [ ${count} -lt ${loop_guard} ]; do + online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "" \ + -v "/rpc-reply/rpc/show/config-sync/status/client/connection-state"` + connection_state=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` + run_time=$((${count} * ${pause})) + case "${connection_state}" in + "Connected") + echo "`date` INFO: ${APP}-Config-sync connection state is Connected, after ${run_time} seconds" + break + ;; + esac + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Config-sync connection state is: ${connection_state}, not yet in Connected" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Config-sync connection state never reached Connected" >&2 + exit 1 + fi + # Now can issue {resync_step} command + echo "`date` INFO: ${APP}-Initiating ${resync_step}" + /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "<${resync_step}>" + /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "<${resync_step}>default" + # Wait for config-sync results + count=0 + echo "`date` INFO: ${APP}-Waiting for config-sync connected" + while [ ${count} -lt ${loop_guard} ]; do + online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ + -q "" \ + -v "/rpc-reply/rpc/show/config-sync/status/oper-status"` + confsyncstatus_results=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` + run_time=$((${count} * ${pause})) + case "${confsyncstatus_results}" in + "Up") + echo "`date` INFO: ${APP}-Config-sync is Up, after ${run_time} seconds" + break + ;; + esac + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Config-sync is: ${confsyncstatus_results}, not yet Up" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Config-sync never reached state \"Up\"" >&2 + exit 1 + fi + fi # if not monitor + echo "`date` INFO: ${APP}-PubSub+ Event Broker bringup is complete for this node." + exit 0 readiness_check.sh: |- #!/bin/bash + APP=`basename "$0"` LOG_FILE=/usr/sw/var/k8s_readiness_check.log # STDOUT/STDERR goes to k8s event logs but gets cleaned out eventually. This will also persist it. tail -n 1000 ${LOG_FILE} > ${LOG_FILE}.tmp; mv -f ${LOG_FILE}.tmp ${LOG_FILE} || : # Limit logs size - exec > >(tee -a ${LOG_FILE}) 2>&1 + exec > >(tee -a ${LOG_FILE}) 2>&1 # Setup logging + FINAL_ACTIVITY_LOGGED_TRACKING_FILE=/tmp/final_activity_state_logged + + # Function to read Kubernetes metadata labels + get_label () { + # Params: $1 label name + echo $(cat /etc/podinfo/labels | awk -F= '$1=="'${1}'"{print $2}' | xargs); + } + # Function to set Kubernetes metadata labels set_label () { + # Params: $1 label name, $2 label set value #Prevent overdriving Kubernetes infra, don't set activity state to same as previous state - previous_state=`cat $3` + previous_state=$(get_label "active") if [ "${2}" = "${previous_state}" ]; then - #echo "`date` INFO: ${APP}-Current and Previous state match (${2}), not updating label" + #echo "`date` INFO: ${APP}-Current and Previous state match (${2}), not updating pod label" : else - echo "`date` INFO: ${APP}-Updating label from `cat ${3}` to ${2}" - echo ${2} > ${3} + echo "`date` INFO: ${APP}-Updating pod label using K8s API from ${previous_state} to ${2}" echo "[{\"op\": \"add\", \"path\": \"/metadata/labels/${1}\", \"value\": \"${2}\" }]" > /tmp/patch_label.json K8S=https://kubernetes.default.svc.cluster.local:$KUBERNETES_SERVICE_PORT KUBE_TOKEN=$(&2 - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi - echo "`date` INFO: ${APP}-Failed to update label from ${3} to ${2}, retrying" fi fi } - # note that there are no re-tries here, if check fails then return not ready. - APP=`basename "$0"` - state_file=/tmp/activity_state - if [ ! -f ${state_file} ]; then # State file not found, creating - echo "unknown" > ${state_file} - fi + + # Main logic: note that there are no re-tries here, if check fails then return not ready. # HA config IFS='-' read -ra host_array <<< $(hostname) node_ordinal=${host_array[-1]} password=`cat /mnt/disks/secrets/username_admin_password` - # For upgrade purposes, additional checks are required for readiness state when the pod has been started - # This is an upgrade if the lastversion_file exists and contents differ from /usr/sw/loads/currentload - lastversion_file=/usr/sw/var/lastBrokerVersionBeforeReboot - if [ -f ${lastversion_file} ] && [[ $(cat ${lastversion_file}) != $(readlink /usr/sw/loads/currentload) ]] ; then + # For update (includes SolOS upgrade) purposes, additional checks are required for readiness state when the pod has been started + # This is an update if the LASTVERSION_FILE with K8s controller-revision-hash exists and contents differ from current value + LASTVERSION_FILE=/var/lib/solace/var/lastConfigRevisionBeforeReboot + if [ -f ${LASTVERSION_FILE} ] && [[ $(cat ${LASTVERSION_FILE}) != $(get_label "controller-revision-hash") ]] ; then echo "`date` INFO: ${APP}-Upgrade detected, running additional checks..." # Check redundancy - results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ + results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ -q "" \ -v "/rpc-reply/rpc/show/redundancy/redundancy-status"` redundancystatus_results=`echo ${results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` if [ "${redundancystatus_results}" != "Up" ]; then echo "`date` INFO: ${APP}-Redundancy state is not yet up." - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi # Additionally check config-sync status for non-monitoring nodes if [ "${node_ordinal}" != "2" ]; then - results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ + results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ -q "" \ -v "/rpc-reply/rpc/show/config-sync/status/oper-status"` confsyncstatus_results=`echo ${results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` if [ "${confsyncstatus_results}" != "Up" ]; then echo "`date` INFO: ${APP}-Config-sync state is not yet up." - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi fi fi - # Record current version in lastversion_file - readlink /usr/sw/loads/currentload > ${lastversion_file} + # Record current version in LASTVERSION_FILE + echo $(get_label "controller-revision-hash") > ${LASTVERSION_FILE} # For monitor node just check for 3 online nodes in group; active label will never be set if [ "${node_ordinal}" = "2" ]; then - role_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ + role_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ -q "" \ -c "/rpc-reply/rpc/show/redundancy/group-node/status[text() = \"Online\"]"` if [[ ${role_results} != *""* ]]; then - errorinfo=`echo ${results} | xmllint -xpath "string(returnInfo/errorInfo)" -` || errorinfo= + errorinfo=`echo ${results} | xmllint -xpath "string(returnInfo/errorInfo)" - 2>/dev/null` || errorinfo= echo "`date` INFO: ${APP}-Waiting for valid server status response, got ${errorinfo}" - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi nodes_online=`echo ${role_results} | xmllint -xpath "string(returnInfo/countSearchResult)" -` if [ "$nodes_online" -eq "3" ]; then - #echo "`date` INFO: ${APP}-Monitor node is redundancy ready" + if [ ! -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} ]; then + echo "`date` INFO: ${APP}-All nodes online, monitor node is redundancy ready" + touch ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} + fi exit 0 else echo "`date` INFO: ${APP}-Monitor node is not redundancy ready, ${nodes_online} of 3 nodes online" - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi fi # End Monitor Node # For Primary or Backup nodes set both service readiness (active label) and k8s readiness (exit return value) health_result=`curl -s -o /dev/null -w "%{http_code}" http://localhost:5550/health-check/guaranteed-active` case "${health_result}" in "200") - if [[ $(cat $state_file) = "false" ]]; then echo "`date` INFO: ${APP}-HA Event Broker health check reported 200, message spool is up"; fi - set_label "active" "true" $state_file + if [ ! -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} ]; then + echo "`date` INFO: ${APP}-HA Event Broker health check reported 200, message spool is up" + touch ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} + fi + set_label "active" "true" exit 0 ;; "503") - if [[ $(cat $state_file) = "true" ]]; then echo "`date` INFO: ${APP}-HA Event Broker health check reported 503"; fi - set_label "active" "false" $state_file + if [[ $(get_label "active") = "true" ]]; then echo "`date` INFO: ${APP}-HA Event Broker health check reported 503"; fi + set_label "active" "false" # Further check is required to determine readiness ;; *) echo "`date` WARN: ${APP}-HA Event Broker health check reported unexpected ${health_result}" - set_label "active" "false" $state_file - exit 1 + set_label "active" "false" + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 esac # At this point analyzing readiness after health check returned 503 - checking if Event Broker is Standby case "${node_ordinal}" in @@ -352,22 +383,24 @@ objects: config_role="backup" ;; esac - online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080/SEMP \ + online_results=`/mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 \ -q "" \ -v "/rpc-reply/rpc/show/redundancy/virtual-routers/${config_role}/status/activity[text()]"` local_activity=`echo ${online_results} | xmllint -xpath "string(returnInfo/valueSearchResult)" -` case "${local_activity}" in "Mate Active") - # Redundancy is up and node is mate Active" # Pass readiness check + if [ ! -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} ]; then + echo "`date` INFO: ${APP}-Redundancy is up and node is mate Active" + touch ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} + fi exit 0 ;; *) echo "`date` WARN: ${APP}-Health check returned 503 and local activity state is: ${local_activity}, failing readiness check." - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 ;; esac - semp_query.sh: |- #!/bin/bash APP=`basename "$0"` @@ -379,13 +412,14 @@ objects: query="" url="" value_search="" + test_connection_only=false script_name=$0 verbose=0 - while getopts "c:n:p:q:u:v:" opt; do + while getopts "c:n:p:q:u:v:t" opt; do case "$opt" in c) count_search=$OPTARG ;; - n) name=$OPTARG + n) username=$OPTARG ;; p) password=$OPTARG ;; @@ -395,23 +429,28 @@ objects: ;; v) value_search=$OPTARG ;; + t) test_connection_only=true + ;; esac done shift $((OPTIND-1)) [ "$1" = "--" ] && shift verbose=1 - #echo "`date` INFO: ${APP}-${script_name}: count_search=${count_search} ,name=${name} ,password=xxx query=${query} \ + #echo "`date` INFO: ${APP}-${script_name}: count_search=${count_search} ,username=${username} ,password=xxx query=${query} \ # ,url=${url} ,value_search=${value_search} ,Leftovers: $@" >&2 - if [[ ${url} = "" || ${name} = "" || ${password} = "" || ${query} = "" ]]; then - echo "`date` ERROR: ${APP}-${script_name}: url, name, password and query are madatory fields" >&2 + if [[ ${url} = "" || ${username} = "" || ${password} = "" ]]; then + echo "`date` ERROR: ${APP}-${script_name}: url, username, password are madatory fields" >&2 echo 'missing parameter' exit 1 fi - if [ `curl --write-out '%{http_code}' --silent --output /dev/null -u ${name}:${password} ${url}` != "200" ] ; then + if [ "`curl --write-out '%{http_code}' --silent --output /dev/null -u ${username}:${password} ${url}`" != "200" ] ; then echo "management host is not responding" exit 1 fi - query_response=`curl -sS -u ${name}:${password} ${url} -d "${query}"` + if [ "$test_connection_only" = true ] ; then + exit 0 # done here, connection is up + fi + query_response=`curl -sS -u ${username}:${password} ${url}/SEMP -d "${query}"` # Validate first char of response is "<", otherwise no hope of being valid xml if [[ ${query_response:0:1} != "<" ]] ; then echo "no valid xml returned" @@ -489,15 +528,15 @@ objects: spec: ports: - port: 8080 - name: semp + name: tcp-semp - port: 8741 - name: ha-mate-link + name: tcp-ha-mate-link - port: 8300 - name: ha-conf-sync0 + name: tcp-ha-conf-sync0 - port: 8301 - name: ha-conf-sync1 + name: tcp-ha-conf-sync1 - port: 8302 - name: ha-conf-sync2 + name: tcp-ha-conf-sync2 clusterIP: None selector: app.kubernetes.io/name: pubsubplus @@ -516,47 +555,71 @@ objects: - port: 2222 targetPort: 2222 protocol: TCP - name: ssh + name: tcp-ssh - port: 8080 targetPort: 8080 protocol: TCP - name: semp + name: tcp-semp - port: 1943 targetPort: 1943 protocol: TCP - name: semptls + name: tls-semp - port: 55555 targetPort: 55555 protocol: TCP - name: smf + name: tcp-smf - port: 55003 targetPort: 55003 protocol: TCP - name: smfcomp + name: tcp-smfcomp - port: 55443 targetPort: 55443 protocol: TCP - name: smftls + name: tls-smf + - port: 55556 + targetPort: 55556 + protocol: TCP + name: tcp-smfroute - port: 8008 targetPort: 8008 protocol: TCP - name: web + name: tcp-web - port: 1443 targetPort: 1443 protocol: TCP - name: webtls + name: tls-web + - port: 9000 + targetPort: 9000 + protocol: TCP + name: tcp-rest + - port: 9443 + targetPort: 9443 + protocol: TCP + name: tls-rest - port: 5672 targetPort: 5672 protocol: TCP - name: amqp + name: tcp-amqp + - port: 5671 + targetPort: 5671 + protocol: TCP + name: tls-amqp - port: 1883 targetPort: 1883 protocol: TCP - name: mqtt - - port: 9000 - targetPort: 9000 + name: tcp-mqtt + - port: 8883 + targetPort: 8883 protocol: TCP - name: rest + name: tls-mqtt + - port: 8000 + targetPort: 8000 + protocol: TCP + name: tcp-mqttweb + - port: 8443 + targetPort: 8443 + protocol: TCP + name: tls-mqttweb selector: app.kubernetes.io/name: pubsubplus app.kubernetes.io/instance: "${DEPLOYMENT_NAME}" @@ -585,11 +648,13 @@ objects: app.kubernetes.io/name: pubsubplus app.kubernetes.io/instance: "${DEPLOYMENT_NAME}" spec: + imagePullSecrets: + - name: ${BROKER_IMAGE_REGISTRY_PULLSECRET} serviceAccountName: "${DEPLOYMENT_NAME}-pubsubplus-sa" terminationGracePeriodSeconds: 1200 containers: - name: pubsubplus - image: "${DOCKER_REGISTRY_URL}:${EVENTBROKER_IMAGE_TAG}" + image: "${BROKER_IMAGE_REGISTRY_URL}:${BROKER_IMAGE_TAG}" imagePullPolicy: IfNotPresent resources: requests: @@ -618,6 +683,10 @@ objects: valueFrom: fieldRef: fieldPath: metadata.namespace + - name: TZ + value: :/usr/share/zoneinfo/UTC + - name: UMASK + value: "0022" command: - bash - "-ec" @@ -625,7 +694,7 @@ objects: source /mnt/disks/solace/init.sh # not using postinstall hooks because of order dependencies # launch config check then PubSub+ so VCMR can provide return code - nohup /mnt/disks/solace/setup-config-sync.sh & + nohup /mnt/disks/solace/startup-broker.sh & /usr/sbin/boot.sh lifecycle: @@ -636,14 +705,20 @@ objects: - "-ec" - | while ! pgrep solacedaemon ; do sleep 1; done - killall solacedaemon; + killall solacedaemon; while [ ! -d /usr/sw/var/db.upgrade ]; do sleep 1; done; volumeMounts: + - name: podinfo + mountPath: /etc/podinfo - name: config-map mountPath: /mnt/disks/solace - name: secrets mountPath: /mnt/disks/secrets readOnly: true + # Uncomment if using TLS configuration + # - name: server-certs + # mountPath: /mnt/disks/certs/server + # readOnly: true - name: dshm mountPath: /dev/shm - name: data @@ -681,17 +756,35 @@ objects: protocol: TCP - containerPort: 55443 protocol: TCP + - containerPort: 55556 + protocol: TCP - containerPort: 8008 protocol: TCP - containerPort: 1443 protocol: TCP + - containerPort: 9000 + protocol: TCP + - containerPort: 9443 + protocol: TCP - containerPort: 5672 protocol: TCP + - containerPort: 5671 + protocol: TCP - containerPort: 1883 protocol: TCP - - containerPort: 9000 + - containerPort: 8883 + protocol: TCP + - containerPort: 8000 + protocol: TCP + - containerPort: 8443 protocol: TCP volumes: + - name: podinfo + downwardAPI: + items: + - path: "labels" + fieldRef: + fieldPath: metadata.labels - name: config-map configMap: name: "${DEPLOYMENT_NAME}-pubsubplus" @@ -700,6 +793,11 @@ objects: secret: secretName: "${DEPLOYMENT_NAME}-pubsubplus-secrets" defaultMode: 0400 + # Uncomment if using TLS configuration + # - name: server-certs + # secret: + # secretName: "${BROKER_TLS_CERT_SECRET}" + # defaultMode: 0400 - name: dshm emptyDir: medium: Memory @@ -716,7 +814,7 @@ objects: accessModes: [ "ReadWriteOnce" ] resources: requests: - storage: "${EVENTBROKER_STORAGE_SIZE}" + storage: "${BROKER_STORAGE_SIZE}" parameters: - name: DEPLOYMENT_NAME @@ -726,23 +824,33 @@ parameters: from: '[A-Z0-9]{8}' value: example required: true - - name: DOCKER_REGISTRY_URL - displayName: Docker Registry URL - description: The Docker registry URL for the registry containing the PubSub+ Event Broker docker image + - name: BROKER_IMAGE_REGISTRY_URL + displayName: Image Registry URL + description: The image registry URL for the registry containing the PubSub+ Event Broker docker image value: solace/solace-pubsub-standard required: true - - name: EVENTBROKER_IMAGE_TAG + - name: BROKER_IMAGE_REGISTRY_PULLSECRET + displayName: Image Registry Pull Secret + description: The pull secret to be used to obtain the PubSub+ Event Broker docker image + value: + required: false + - name: BROKER_IMAGE_TAG displayName: PubSub+ Event Broker Docker Image Tag description: The Docker image tag for the PubSub+ Event Broker docker image from your Docker registry value: latest required: true - - name: EVENTBROKER_ADMIN_PASSWORD + - name: BROKER_ADMIN_PASSWORD displayName: Base64 encoded password for PubSub+ username 'admin' description: The Event Broker 'admin' user's password (base64 encoded). This PubSub+ OpenShift template will create an administrative user with username 'admin' with specified password. - value: "cEBzc3cwcmQ=" # password 'p@ssw0rd' required: true - - name: EVENTBROKER_STORAGE_SIZE + - name: BROKER_STORAGE_SIZE displayName: PubSub+ Event Broker Persistent Storage Disk Size description: The size in gigabytes for a Event Broker Pod's persistent volume (with suffix 'Gi'), example 30Gi for 30 gigabytes value: 30Gi required: true + # Uncomment if using TLS configuration + # - name: BROKER_TLS_CERT_SECRET + # displayName: Certificate Secret for Broker TLS Config + # description: The server key and certificate for the event broker packaged in a Kubernetes secret + # value: + # required: true diff --git a/templates/eventbroker_singlenode_template.yaml b/templates/eventbroker_singlenode_template.yaml index 3190daa..58dad1b 100644 --- a/templates/eventbroker_singlenode_template.yaml +++ b/templates/eventbroker_singlenode_template.yaml @@ -16,7 +16,7 @@ objects: app.kubernetes.io/name: pubsubplus type: Opaque data: - username_admin_password: "${EVENTBROKER_ADMIN_PASSWORD}" + username_admin_password: "${BROKER_ADMIN_PASSWORD}" - kind: ConfigMap apiVersion: v1 @@ -27,37 +27,78 @@ objects: app.kubernetes.io/name: pubsubplus data: init.sh: |- - # export username_admin_passwordfilepath=/mnt/disks/secrets/username_admin_password - export username_admin_password=`cat /mnt/disks/secrets/username_admin_password` - export username_admin_globalaccesslevel=admin - export service_ssh_port='2222' - export service_webtransport_port='8008' - export service_webtransport_tlsport='1443' - export service_semp_tlsport='1943' - export logging_debug_output=all - export system_scaling_maxconnectioncount="100" - - setup-config-sync.sh: |- - #!/bin/bash - exit 0 - + export username_admin_passwordfilepath="/mnt/disks/secrets/username_admin_password" + export username_admin_globalaccesslevel=admin + export service_ssh_port='2222' + export service_webtransport_port='8008' + export service_webtransport_tlsport='1443' + export service_semp_tlsport='1943' + export logging_debug_output=all + export system_scaling_maxconnectioncount="100" + # Uncomment if using TLS configuration + # cat /mnt/disks/certs/server/tls.key /mnt/disks/certs/server/tls.crt > /dev/shm/server.cert + # export tls_servercertificate_filepath="/dev/shm/server.cert" + startup-broker.sh: |- + #!/bin/bash + APP=`basename "$0"` + IFS='-' read -ra host_array <<< $(hostname) + node_ordinal=${host_array[-1]} + echo "`date` INFO: ${APP}-Node ordinal: ${node_ordinal}" + echo "`date` INFO: ${APP}-Waiting for management API to become available" + password=`cat /mnt/disks/secrets/username_admin_password` + loop_guard=60 + pause=10 + count=0 + while [ ${count} -lt ${loop_guard} ]; do + if /mnt/disks/solace/semp_query.sh -n admin -p ${password} -u http://localhost:8080 -t ; then + break + fi + run_time=$((${count} * ${pause})) + ((count++)) + echo "`date` INFO: ${APP}-Waited ${run_time} seconds, Management API not yet accessible" + sleep ${pause} + done + if [ ${count} -eq ${loop_guard} ]; then + echo "`date` ERROR: ${APP}-Solace Management API never came up" >&2 + exit 1 + fi + # Uncomment if using TLS configuration + # rm /dev/shm/server.cert # remove as soon as possible + # cert_results=$(curl --write-out '%{http_code}' --silent --output /dev/null -k -X PATCH -u admin:${password} https://localhost:1943/SEMP/v2/config/ \ + # -H "content-type: application/json" \ + # -d "{\"tlsServerCertContent\":\"$(cat /mnt/disks/certs/server/tls.key /mnt/disks/certs/server/tls.crt | awk '{printf "%s\\n", $0}')\"}") + # if [ "${cert_results}" != "200" ]; then + # echo "`date` ERROR: ${APP}-Unable to set the server certificate, exiting" >&2 + # exit 1 + # fi + # echo "`date` INFO: ${APP}-Server certificate has been configured" + echo "`date` INFO: ${APP}-PubSub+ Event Broker bringup is complete for this node." + exit 0 readiness_check.sh: |- #!/bin/bash + APP=`basename "$0"` LOG_FILE=/usr/sw/var/k8s_readiness_check.log # STDOUT/STDERR goes to k8s event logs but gets cleaned out eventually. This will also persist it. tail -n 1000 ${LOG_FILE} > ${LOG_FILE}.tmp; mv -f ${LOG_FILE}.tmp ${LOG_FILE} || : # Limit logs size - exec > >(tee -a ${LOG_FILE}) 2>&1 + exec > >(tee -a ${LOG_FILE}) 2>&1 # Setup logging + FINAL_ACTIVITY_LOGGED_TRACKING_FILE=/tmp/final_activity_state_logged + + # Function to read Kubernetes metadata labels + get_label () { + # Params: $1 label name + echo $(cat /etc/podinfo/labels | awk -F= '$1=="'${1}'"{print $2}' | xargs); + } # Function to set Kubernetes metadata labels set_label () { + # Params: $1 label name, $2 label set value #Prevent overdriving Kubernetes infra, don't set activity state to same as previous state - previous_state=`cat $3` + previous_state=$(get_label "active") if [ "${2}" = "${previous_state}" ]; then - #echo "`date` INFO: ${APP}-Current and Previous state match (${2}), not updating label" + #echo "`date` INFO: ${APP}-Current and Previous state match (${2}), not updating pod label" : else - echo "`date` INFO: ${APP}-Updating label from `cat ${3}` to ${2}" - echo ${2} > ${3} + echo "`date` INFO: ${APP}-Updating pod label using K8s API from ${previous_state} to ${2}" echo "[{\"op\": \"add\", \"path\": \"/metadata/labels/${1}\", \"value\": \"${2}\" }]" > /tmp/patch_label.json K8S=https://kubernetes.default.svc.cluster.local:$KUBERNETES_SERVICE_PORT KUBE_TOKEN=$(&2 - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 fi - echo "`date` INFO: ${APP}-Failed to update label from ${3} to ${2}, retrying" fi fi } - # note that there are no re-tries here, if check fails then return not ready. - APP=`basename "$0"` - state_file=/tmp/activity_state - if [ ! -f ${state_file} ]; then # State file not found, creating - echo "unknown" > ${state_file} - fi + + # Main logic: note that there are no re-tries here, if check fails then return not ready. # nonHA config health_result=`curl -s -o /dev/null -w "%{http_code}" http://localhost:5550/health-check/guaranteed-active` - case "${health_result}" in "200") - if [[ $(cat $state_file) = "false" ]]; then echo "`date` INFO: ${APP}-nonHA Event Broker health check reported 200, message spool is up"; fi - set_label "active" "true" $state_file + if [ ! -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} ]; then + echo "`date` INFO: ${APP}-nonHA Event Broker health check reported 200, message spool is up" + touch ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE} + fi + set_label "active" "true" exit 0 ;; "503") - if [[ $(cat $state_file) = "true" ]]; then echo "`date` INFO: ${APP}-nonHA Event Broker health check reported 503, message spool is down"; fi - set_label "active" "false" $state_file + if [[ $(get_label "active") = "true" ]]; then echo "`date` INFO: ${APP}-nonHA Event Broker health check reported 503, message spool is down"; fi + set_label "active" "false" # Fail readiness check - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 ;; *) echo "`date` WARN: ${APP}-nonHA Event Broker health check reported ${health_result}" - set_label "active" "false" $state_file + set_label "active" "false" # Fail readiness check - exit 1 + rm -f ${FINAL_ACTIVITY_LOGGED_TRACKING_FILE}; exit 1 esac - semp_query.sh: |- #!/bin/bash APP=`basename "$0"` @@ -117,13 +154,14 @@ objects: query="" url="" value_search="" + test_connection_only=false script_name=$0 verbose=0 - while getopts "c:n:p:q:u:v:" opt; do + while getopts "c:n:p:q:u:v:t" opt; do case "$opt" in c) count_search=$OPTARG ;; - n) name=$OPTARG + n) username=$OPTARG ;; p) password=$OPTARG ;; @@ -133,23 +171,28 @@ objects: ;; v) value_search=$OPTARG ;; + t) test_connection_only=true + ;; esac done shift $((OPTIND-1)) [ "$1" = "--" ] && shift verbose=1 - #echo "`date` INFO: ${APP}-${script_name}: count_search=${count_search} ,name=${name} ,password=xxx query=${query} \ + #echo "`date` INFO: ${APP}-${script_name}: count_search=${count_search} ,username=${username} ,password=xxx query=${query} \ # ,url=${url} ,value_search=${value_search} ,Leftovers: $@" >&2 - if [[ ${url} = "" || ${name} = "" || ${password} = "" || ${query} = "" ]]; then - echo "`date` ERROR: ${APP}-${script_name}: url, name, password and query are madatory fields" >&2 + if [[ ${url} = "" || ${username} = "" || ${password} = "" ]]; then + echo "`date` ERROR: ${APP}-${script_name}: url, username, password are madatory fields" >&2 echo 'missing parameter' exit 1 fi - if [ `curl --write-out '%{http_code}' --silent --output /dev/null -u ${name}:${password} ${url} -d ""` != "200" ] ; then + if [ "`curl --write-out '%{http_code}' --silent --output /dev/null -u ${username}:${password} ${url}`" != "200" ] ; then echo "management host is not responding" exit 1 fi - query_response=`curl -sS -u ${name}:${password} ${url} -d "${query}"` + if [ "$test_connection_only" = true ] ; then + exit 0 # done here, connection is up + fi + query_response=`curl -sS -u ${username}:${password} ${url}/SEMP -d "${query}"` # Validate first char of response is "<", otherwise no hope of being valid xml if [[ ${query_response:0:1} != "<" ]] ; then echo "no valid xml returned" @@ -175,6 +218,7 @@ objects: exit 0 fi + # Uncomment if using provider-specific StorageClass # Also uncomment further down at volumeClaimTemplates # This is an example for aws @@ -227,47 +271,71 @@ objects: - port: 2222 targetPort: 2222 protocol: TCP - name: ssh + name: tcp-ssh - port: 8080 targetPort: 8080 protocol: TCP - name: semp + name: tcp-semp - port: 1943 targetPort: 1943 protocol: TCP - name: semptls + name: tls-semp - port: 55555 targetPort: 55555 protocol: TCP - name: smf + name: tcp-smf - port: 55003 targetPort: 55003 protocol: TCP - name: smfcomp + name: tcp-smfcomp - port: 55443 targetPort: 55443 protocol: TCP - name: smftls + name: tls-smf + - port: 55556 + targetPort: 55556 + protocol: TCP + name: tcp-smfroute - port: 8008 targetPort: 8008 protocol: TCP - name: web + name: tcp-web - port: 1443 targetPort: 1443 protocol: TCP - name: webtls + name: tls-web + - port: 9000 + targetPort: 9000 + protocol: TCP + name: tcp-rest + - port: 9443 + targetPort: 9443 + protocol: TCP + name: tls-rest - port: 5672 targetPort: 5672 protocol: TCP - name: amqp + name: tcp-amqp + - port: 5671 + targetPort: 5671 + protocol: TCP + name: tls-amqp - port: 1883 targetPort: 1883 protocol: TCP - name: mqtt - - port: 9000 - targetPort: 9000 + name: tcp-mqtt + - port: 8883 + targetPort: 8883 + protocol: TCP + name: tls-mqtt + - port: 8000 + targetPort: 8000 + protocol: TCP + name: tcp-mqttweb + - port: 8443 + targetPort: 8443 protocol: TCP - name: rest + name: tls-mqttweb selector: app.kubernetes.io/name: pubsubplus app.kubernetes.io/instance: "${DEPLOYMENT_NAME}" @@ -296,11 +364,13 @@ objects: app.kubernetes.io/name: pubsubplus app.kubernetes.io/instance: "${DEPLOYMENT_NAME}" spec: + imagePullSecrets: + - name: ${BROKER_IMAGE_REGISTRY_PULLSECRET} serviceAccountName: "${DEPLOYMENT_NAME}-pubsubplus-sa" terminationGracePeriodSeconds: 1200 containers: - name: pubsubplus - image: "${DOCKER_REGISTRY_URL}:${EVENTBROKER_IMAGE_TAG}" + image: "${BROKER_IMAGE_REGISTRY_URL}:${BROKER_IMAGE_TAG}" imagePullPolicy: IfNotPresent resources: requests: @@ -329,16 +399,19 @@ objects: valueFrom: fieldRef: fieldPath: metadata.namespace + - name: TZ + value: :/usr/share/zoneinfo/UTC + - name: UMASK + value: "0022" command: - bash - "-ec" - | source /mnt/disks/solace/init.sh # not using postinstall hooks because of order dependencies - # launch config check then PubSub+ so VCMR can provide return code - nohup /mnt/disks/solace/setup-config-sync.sh & + # launch config check - readiness check script will be launched by readinessProbe + nohup /mnt/disks/solace/startup-broker.sh & /usr/sbin/boot.sh - lifecycle: preStop: exec: @@ -347,14 +420,20 @@ objects: - "-ec" - | while ! pgrep solacedaemon ; do sleep 1; done - killall solacedaemon; + killall solacedaemon; while [ ! -d /usr/sw/var/db.upgrade ]; do sleep 1; done; volumeMounts: + - name: podinfo + mountPath: /etc/podinfo - name: config-map mountPath: /mnt/disks/solace - name: secrets mountPath: /mnt/disks/secrets readOnly: true + # Uncomment if using TLS configuration + # - name: server-certs + # mountPath: /mnt/disks/certs/server + # readOnly: true - name: dshm mountPath: /dev/shm - name: data @@ -392,17 +471,35 @@ objects: protocol: TCP - containerPort: 55443 protocol: TCP + - containerPort: 55556 + protocol: TCP - containerPort: 8008 protocol: TCP - containerPort: 1443 protocol: TCP + - containerPort: 9000 + protocol: TCP + - containerPort: 9443 + protocol: TCP - containerPort: 5672 protocol: TCP + - containerPort: 5671 + protocol: TCP - containerPort: 1883 protocol: TCP - - containerPort: 9000 + - containerPort: 8883 + protocol: TCP + - containerPort: 8000 + protocol: TCP + - containerPort: 8443 protocol: TCP volumes: + - name: podinfo + downwardAPI: + items: + - path: "labels" + fieldRef: + fieldPath: metadata.labels - name: config-map configMap: name: "${DEPLOYMENT_NAME}-pubsubplus" @@ -411,6 +508,11 @@ objects: secret: secretName: "${DEPLOYMENT_NAME}-pubsubplus-secrets" defaultMode: 0400 + # Uncomment if using TLS configuration + # - name: server-certs + # secret: + # secretName: "${BROKER_TLS_CERT_SECRET}" + # defaultMode: 0400 - name: dshm emptyDir: medium: Memory @@ -427,7 +529,7 @@ objects: accessModes: [ "ReadWriteOnce" ] resources: requests: - storage: "${EVENTBROKER_STORAGE_SIZE}" + storage: "${BROKER_STORAGE_SIZE}" parameters: - name: DEPLOYMENT_NAME @@ -437,23 +539,33 @@ parameters: from: '[A-Z0-9]{8}' value: example required: true - - name: DOCKER_REGISTRY_URL - displayName: Docker Registry URL - description: The Docker registry URL for the registry containing the PubSub+ Event Broker docker image + - name: BROKER_IMAGE_REGISTRY_URL + displayName: Image Registry URL + description: The image registry URL for the registry containing the PubSub+ Event Broker docker image value: solace/solace-pubsub-standard required: true - - name: EVENTBROKER_IMAGE_TAG + - name: BROKER_IMAGE_REGISTRY_PULLSECRET + displayName: Image Registry Pull Secret + description: The pull secret to be used to obtain the PubSub+ Event Broker docker image + value: + required: false + - name: BROKER_IMAGE_TAG displayName: PubSub+ Event Broker Docker Image Tag description: The Docker image tag for the PubSub+ Event Broker docker image from your Docker registry value: latest required: true - - name: EVENTBROKER_ADMIN_PASSWORD + - name: BROKER_ADMIN_PASSWORD displayName: Base64 encoded password for PubSub+ username 'admin' description: The Event Broker 'admin' user's password (base64 encoded). This PubSub+ OpenShift template will create an administrative user with username 'admin' with specified password. - value: "cEBzc3cwcmQ=" # password 'p@ssw0rd' required: true - - name: EVENTBROKER_STORAGE_SIZE + - name: BROKER_STORAGE_SIZE displayName: PubSub+ Event Broker Persistent Storage Disk Size description: The size in gigabytes for a Event Broker Pod's persistent volume (with suffix 'Gi'), example 30Gi for 30 gigabytes value: 30Gi required: true + # Uncomment if using TLS configuration + # - name: BROKER_TLS_CERT_SECRET + # displayName: Certificate Secret for Broker TLS Config + # description: The server key and certificate for the event broker packaged in a Kubernetes secret + # value: + # required: true \ No newline at end of file