Kony Fabric Installation Guide for Kony Fabric Containers Solution On-Premises Release V8.3.0.0 GA Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and the document version stated on the Revision History page. Remember to always view and download the latest document version relevant to the software release you are using. 2018 by Kony, Inc. All rights reserved 1 of 17
Installation Guide for Kony Fabric Containers Solution On-Premises Copyright 2017 Kony, Inc. All rights reserved. September, 2018 This document contains information proprietary to Kony, Inc., is bound by the Kony license agreements, and may not be used except in the context of understanding the use and methods of Kony, Inc., software without prior, express, written permission. Kony, Empowering Everywhere, Kony Fabric, Kony Nitro, and Kony Visualizer are trademarks of Kony, Inc. MobileFabric is a registered trademark of Kony, Inc. Microsoft, the Microsoft logo, Internet Explorer, Windows, and Windows Vista are registered trademarks of Microsoft Corporation. Apple, the Apple logo, itunes, iphone, ipad, OS X, Objective-C, Safari, Apple Pay, Apple Watch, and Xcode are trademarks or registered trademarks of Apple, Inc. Google, the Google logo, Android, and the Android logo are registered trademarks of Google, Inc. Chrome is a trademark of Google, Inc. BlackBerry, PlayBook, Research in Motion, and RIM are registered trademarks of BlackBerry. SAP and SAP Business Suite are registered trademarks of SAP SE in Germany and in several other countries. All other terms, trademarks, or service marks mentioned in this document have been capitalized and are to be considered the property of their respective owners. 2018 by Kony, Inc. All rights reserved 2 of 17
Installation Guide for Kony Fabric Containers Solution On-Premises Revision History Date Document Version Description of Modifications/Release 09/24/2018 1.2 Document published for V8.3.0.0 GA. 07/24/2018 1.1 Document published for V8.2.1.0 GA. 05/17/2018 1.0 Document published for V8.1.1 GA. Getting Started Options Release Notes Kony Downloads Video Tutorials QuickStart Guides Kony Fabric User Guide Visualizer User Guide Sample Apps 2018 by Kony, Inc. All rights reserved 3 of 17
Installation Guide for Kony Fabric Containers Solution On-Premises Table of Contents 1. Overview 5 1.1 Salient Features 5 1.2 On-Premises Developer Instance Setup 5 2. Prerequisites 6 2.1 Software Requirements 6 2.2 Hardware Requirements 7 3. Architecture 8 3.1 Installation Types 9 4. Configuration 10 5. Installation 12 5.1 Limitations 15 6. FAQs and Troubleshooting 16 6.1 Extracting Logs from your Application 16 6.2 Cluster cleanup 16 6.3 Configuring Visualizer to connect to Kony Fabric 17 2018 by Kony, Inc. All rights reserved 4 of 17
1. Overview Installation Guide for Kony Fabric Containers Solution On-Premises 1. Overview Kony Fabric Containers Solution On-Premises setup occurs with minimal manual intervention and leverages the following technologies: Docker - To package different components as portable container images (with all the required binaries and libs) Kubernetes - To orchestrate and maintain all these running containers. It will also have features like auto-scaling, secrets, deployment upgrades and rollbacks. 1.1 Salient Features The Kony Fabric Containers Solution provides developers with tools to build applications. The Kony Fabric Containers Solution has the following features: 1. Deploys Kony Fabric on Kubernetes environment using Minikube (Supports single node deployment). 2. Supports multi-platform deployment in Windows, Linux, and Mac. 1.2 On-Premises Developer Instance Setup On-premises Developer instance uses Minikube application for creating local Kubernetes cluster environment. A different Minikube profile 'kfminikube' will be used, so that no existing clusters in Minikube will be affected. Note: As of July 2018, Minikube does not support multi node cluster. 2018 by Kony, Inc. All rights reserved 5 of 17
2. Prerequisites Installation Guide for Kony Fabric Containers Solution On-Premises 2. Prerequisites Use any bash/shell prompt for executing the install.sh script on Windows. Mac and Linux support Bash prompt by default. Install the latest VirtualBox (v5.2.8) in case of Windows and Mac. Add the VirtualBox installation directory to the PATH environment variable. Note: For Windows 8.1 and Windows 10 Pro machines, disable Hyper-V if it is already enabled before installing VirtualBox. Kony supports only VirtualBox. Intel VT and related settings should be enabled in system BIOS. Important: In case of Windows and Mac, the installation script uses the vboxmanage command of VirtualBox to enable networking from the host machine to the Kubernetes cluster. 2.1 Software Requirements 2.1.1 Supported Application Servers Kony Fabric Containers Solution supports only the Tomcat Application server. All the Docker images built for Kony Fabric are built using the Tomcat 8.5.28-jre8 as the base image. 2.1.2 Supported Databases Kony Fabric Containers Solution supports the following database servers: 2018 by Kony, Inc. All rights reserved 6 of 17
2. Prerequisites Installation Guide for Kony Fabric Containers Solution On-Premises Database Type Version Supported MySQL 5.6, 5.7 Microsoft SQL Server 2016 Azure Database for MySQL 5.6, 5.7 Azure SQL Server (Logical server) Default Note: You must have an existing external Database. The Database does not come bundled with the Installer. 2.2 Hardware Requirements CPU: Dual-core processor Memory: Minikube requires 6 GB of memory. Therefore, Kony recommends using a system with 16 GB RAM. 2018 by Kony, Inc. All rights reserved 7 of 17
3. Architecture Installation Guide for Kony Fabric Containers Solution On-Premises 3. Architecture The complete Kony Fabric Containers Solution will have a total of six pods. Following is the list of pods present in the Kony Fabric Containers Solution: Console API Developer Portal Identity Integration (Contains two containers - Integration and ActiveMQ) Engagement Database (exits on completion of the Database scripts execution) The following is the list of Docker images used for the pods in the Kony Fabric Containers Solution: Fabric Console (Contains mfconsole.war, workspace.war, and accounts.war) API Developer Portal (Contains apiportal.war) Identity (Contains authservice.war) Integration (Contains admin.war, services.war, middleware.war, apps.war, and metrics.war) Engagement (Contains kpns.war) ActiveMQ (Contains metrics.war) Database (Contains Database migration scripts) 2018 by Kony, Inc. All rights reserved 8 of 17
3. Architecture Installation Guide for Kony Fabric Containers Solution On-Premises All these images are pushed into the Kony Fabric Docker Hub registry: https://hub.docker.com/r/konyfabric Kony Fabric Containers Solution downloadable bundle contains the following directories and files. install.sh - Installation script templates - Directory containing Kubernetes config template files config.properties - Properties file to pass the inputs to install.sh, instead of giving inputs in shell prompts. lib - Folder containing the fabric-utils.jar file. 3.1 Installation Types Command Line or GUI Installation - Kony Fabric Containers Solution can be installed using the bundled install shell script, which will prompt the user for required values. Silent Installation - The installation script also supports silent installation if the config.properties file is passed as an argument (for example, /path/install.sh config.properties). Using this, you can have additional ability to pass custom Tomcat JAVA_OPTS, Heap memory settings, and time-zone settings as well. 2018 by Kony, Inc. All rights reserved 9 of 17
4. Configuration Installation Guide for Kony Fabric Containers Solution On-Premises 4. Configuration The following parameters are to be provided by the user during Installation: 1. Install Environment Name - The install environment name can be anything, for example, dev, qa, prod, or eastusprod. Note: The Install Environment Name must not contain numbers. 2. Domain Name - The Domain Name for Kony Fabric. Note: Domain name cannot be an IP address. 3. Database Details: Database Type - This is the Database type you want to use for hosting Kony Fabric. Database Hostname - This is the Database Server hostname used to connect to the Database Server. Database Port Number This is the Port Number used to connect to the Database Server. Database Username - This is the preferred Database Username used to connect to the Database Server. Database Password - This is the Database Password used to connect to the Database Server. Important: The password must be a string containing a minimum of 8 characters and combination of alpha-numeric and non-alpha-numeric characters. Database Prefix This is the Database server prefix for Kony Fabric Schemas/Databases. 2018 by Kony, Inc. All rights reserved 10 of 17
4. Configuration Installation Guide for Kony Fabric Containers Solution On-Premises Database Suffix This is the Database server suffix for Kony Fabric Schemas/Databases. 4. Automatic Registration Details: User Id E-mail Id used for Kony Fabric Registration. Password Password used for Kony Fabric Registration. First Name First Name used for Kony Fabric Registration. Last Name Last Name used for Kony Fabric Registration. Environment Name Environment to publish generated applications. 2018 by Kony, Inc. All rights reserved 11 of 17
5. Installation Installation Guide for Kony Fabric Containers Solution On-Premises 5. Installation Run the Kony Fabric Containers install script to generate and deploy Kony Fabric containers. The installation script checks if Minikube and kubectl binaries are present in the System path. If they are not found in the path, the script will download the binaries into the install script s directory. Steps to Install Kony Fabric Containers Solution on On-Premises: 1. Download the kony-fabric-containers-onprem_8.3.0.0_ga.zip from https://community.kony.com/download-product/field_product_download_link/22577/22567 and extract it. The file structure will be as shown below: 2. Run the install.sh file. Note: You must provide execute permissions to run the install.sh file on Linux and Mac. 3. Enter the Install Environment Name and Domain Name. Note: Domain name cannot be localhost or an IP address. 2018 by Kony, Inc. All rights reserved 12 of 17
5. Installation Installation Guide for Kony Fabric Containers Solution On-Premises 4. Provide the Database details as shown: Note: Ensure that the Database details you provide point to an existing Database instance. Note: Database Hostname cannot be localhost. Note: Database Port is an optional value. Note: If the Database Prefix or Suffix contain numeric characters, enclose the values in single quotes(' '). 5. Enter the Administration Account Configuration details as shown: Note: Password must contain at least 8 characters, at most 20 characters and must include at least one uppercase letter, one lowercase letter, one digit and one special character. 2018 by Kony, Inc. All rights reserved 13 of 17
5. Installation Installation Guide for Kony Fabric Containers Solution On-Premises Once all the input parameters are given, the installation procedure starts. After successful completion of execution, the Kony Fabric URLs are displayed on the screen. 2018 by Kony, Inc. All rights reserved 14 of 17
5. Installation Installation Guide for Kony Fabric Containers Solution On-Premises 5.1 Limitations Kony Fabric Containers Solution has the following limitations: Support for SPA / Desktop Web is only available for zipped SPA apps, but not for WARs. Log Analytics is currently not supported. 2018 by Kony, Inc. All rights reserved 15 of 17
6. FAQs and Troubleshooting Installation Guide for Kony Fabric Containers Solution On- Premises 6. FAQs and Troubleshooting Do I need to have an account with the Docker Hub to pull the Kony Fabric Images? No. The images are public and you do not need any authorization to download them. Can I decide the number of nodes in the Kubernetes cluster? No, you cannot specify the node count for OnPrem Containers setup, as minikube does not support configuring more than one node. How can I white-list custom IP ranges to allow access to Azure Database service? You can white-list the required IP addresses under the Firewall Rules of the Connection Security page for the Database, so that it is accessible by the DB user and the application. For more details, refer Firewall Rules. 6.1 Extracting Logs from your Application If you want to extract logs from a container, execute the following commands from your terminal: COMMAND LOG $ kubectl get pods Lists all the pods $ kubectl logs -f <pod-name> To tail logs from a specific pod $ kubectl logs pod-name > logs.txt To extract the logs of a specific pod to the local file 6.2 Cluster cleanup Run the following script to delete all the Kubernetes and app resources created via the install script: kubectl delete deploy [(NAME -l label --all)] kubectl delete svc [(NAME -l label --all)] kubectl delete cm [(NAME -l label --all)] 2018 by Kony, Inc. All rights reserved 16 of 17
6. FAQs and Troubleshooting Installation Guide for Kony Fabric Containers Solution On- Premises kubectl delete secrets [(NAME -l label --all)] kubectl delete ing [(NAME -l label --all)] kubectl delete jobs [(NAME -l label --all)] kubectl delete deploy --all -n kube-system kubectl delete svc --all -n kube-system kubectl delete cm --all -n kube-system kubectl delete ing --all -n kube-system For more information, refer to https://kubernetes-v1-4.github.io/docs/user-guide/kubectl/kubectl_ delete/. 6.3 Configuring Visualizer to connect to Kony Fabric For details, refer http://docs.kony.com/konylibrary/visualizer/visualizer_user_guide/default.htm#connect_to_ KonyFabric.htm 2018 by Kony, Inc. All rights reserved 17 of 17