by Rojan Jose
IBM Developer Advocate
by Rojan Jose
IBM Developer Advocate
Red Hat® Marketplace is an open cloud marketplace that makes it easier to discover and access certified software for container-based environments in public clouds and on-prem. Learn how to get started with automated deployment of open source and proprietary software onto Red Hat OpenShift® clusters. Explore the integrated experience of discovery, support, billing and spending related to your software consumption.
Hi, my name is Rojan Jose and I’m a developer advocate at IBM. Today, I’m going to talk about Red Hat Marketplace and show you how enterprises can use this marketplace to streamline their software deployments.
When it comes to the use of software for application development, the common challenges that enterprise developers run into are:
Red Hat Marketplace is a simpler way to buy, deploy, and manage enterprise software to any cloud.
It is an open cloud marketplace that makes it easier to discover and access certified software for container-based environments.
With automated deployment, software is immediately available to deploy on an OpenShift cluster that could be running on public cloud, on-prem, or even on a developer workstation.
Marketplace uses OpenShift as a common platform to increase speed to market by providing unbiased information on the products. It simplifies the software evaluation process by providing information on the level of capability and quality, by certificating the products, having built-in vulnerability scans, third-party reviews, free trials etc.
With OpenShift as the runtime, the users get the deployment flexibility and the ability to move the workload across various clouds. One of the key differentiators for Red Hat Marketplace is the visibility it can provide on your software usage. This will help enterprises minimize wastage associated with their software spending. The marketplace platform is built on open standards. It uses the Kubernetes operator framework available as part of the OpenShift v4.x.
Available today is the public marketplace which gives you access to open source and proprietary software, with centralized support, usage metering and a single billing for the organization, discounted offers from the software vendors, and single-dashboard visibility across all your cloud environments.
A private marketplace, personalized for enterprises, will be available soon [editor’s note: Red Hat Marketplace Select went live on September 9, 2020] to provide teams easy access to curated pre-approved software, approval workflows, bring-your-own-licenses, usage reporting by departments, single sign-on, etc.
I mentioned earlier about the Kubernetes operators, so what is an operator? An operator is a method of packaging, deploying and managing an application on Kubernetes. Operators are built using the Kubernetes custom resource and controller definitions.
The capabilities of an operator include:
Packaging the software, deploying on demand, life-cycle management features such as taking and restoring backup, handling upgrades, etc. Lookup “OpenShift operators” to learn more about it.
An operator framework is a set of tools that is used to enable operator capabilities. The operator maturity model as shown in the diagram is categorized into five phases. Starting with basic install in phase 1, to upgrades, backup, failure recovery, insights, and all the way to auto pilot in phase 5.
Now, let’s take a deeper look at Red Hat Marketplace and see how to get started with setting up your marketplace.
Go to marketplace.redhat.com to reach the Red Hat Marketplace website. You should reach the marketplace landing page that is on display. At the top, is a carousel with links to introductory articles and videos on Red Hat Marketplace. As you scroll down, you see a list of 60 products classified under 12 different categories. The catalog is growing, you will see a lot more open source and vendor proprietary products getting added to the catalog in the coming months.
Let’s say as a developer, I’m looking for database products. Click on the database category to see the complete list of database products. Use the filter on the left to narrow down the results. Click on the product tile to view the product details. MemSQL meets the certification standards on 5 different parameters. It also supports phase 1 and phase 2 on the operator maturity model. The overview tab provides general information about the product and reviews from G2. Reviews from a third-party source allow the marketplace to be vendor-neutral.
The documentation tab provides links to getting started and installation guides. The pricing tab offers a summary of product pricing by tiers. Product entitlement can be based on the number of containers, user count, application instances, etc. along with the subscription terms which can be monthly or yearly renewals. Metering-based usage and managing overages will be available in the future releases. And the help tab gives more information about the support plan.
Now let me check out another database. This time I’ll use the search bar to find a specific product. Find PostgreSQL and open the product details page. Notice the operator capability level, PostgreSQL supports all phases.
I have decided to try out PostgreSQL. To try out a product, click on the “Free trial” button. As you can see, to try a product you need to sign in. Click on “View my purchased software”, PostgreSQL will appear in “My software” list.
To sign in, you need to create a Red Hat Marketplace account first. To create a new account, click on the “Create account” button. Notice, the Marketplace is currently available in the United States only. It is expected to be available for countries and geographies later this year.
Enter the email ID for the account you want to create. Note that my ID already is associated with an IBMid. Marketplace will automatically create an IBMid if you do not have one. Click on the “Continue with IBMid” button, if you have an IBMid. Next, log in using your IBMid.
Enter your company information if you are creating this account using your corporate ID. I’ll create this account as a personal ID. Enter a valid address and click next. You will be prompted with a payment method panel. Payment method can be set up using a credit card or a purchase order number. You can choose to set up your account with a credit card. No charges will be incurred for using trial software. Complete the payment form to get the account created.
Click on the “Start trial” button. Click on the “Visit my software” link to view all the software purchases you have made. As you can see, Crunchy PostgreSQL is not available for use. The trial period is set to 29 days.
The next step is to install the software on an OpenShift cluster. Before you start installing the software, you need to set up the cluster with the Red Hat Marketplace operator. For this demo, I’m going to use a new OpenShift cluster. Let’s see how the cluster is provisioned.
You will need a paid IBM account or an account with sufficient credit to create an OpenShift cluster. Login to IBM Cloud. Click on the OpenShift icon. All your existing OpenShift clusters will show up. I’m going to create a new cluster.
For version, I’ll pick 4.3.28 which is stable and default. On the right side, you see the pricing associated with the cluster. Pick the attributes for the cluster and you can see the price adjust accordingly on the right. Leave “Classic” under infrastructure. Pick a resource group, “Single zone” for availability and “Washington DC 07” as the worker zone. Set work pool count to 2. Give the cluster a name – “rj-rhm-demo”. Verify the configuration and click on the “Create” button. It takes about 20 minutes for the cluster to be ready. Click on the cluster name to open the cluster details page. Click on the “OpenShift web console” button and navigate to the OperatorHub page. As you may know, Operator hub is integrated with OpenShift. Under the provider type, you will find three providers. Marketplace will appear as a new provider after the installation of Marketplace operator.
To install the Red Hat Marketplace operator, I need to run the install script from my command line terminal and for that I should be logged in as cluster admin. Get the login credential from the “Copy login command” page. I’m now logged in to the cluster. Let me go back to the Red Hat Marketplace and start the marketplace operator install. Navigate to the clusters page in the Red Hat Marketplace portal and click on the “Add cluster” page.
The “Add cluster” step requires you to run a script using the OpenShift CLI. Make sure the CLI and the JQ plugins are installed on your workstation. Enter a name that appropriately represents your cluster. Enter a name for the pull secret and click on the “Generate secret” button. Download the pull secret for later use. Finally, click on the “Add cluster” button. As you can see, the new cluster has appeared in the list with the status “Operator not installed”. Next step is to register the cluster. Click on the “Register” link to and copy the install script instruction into your command line terminal.
Now, replace the pull secret parameter with the pull secret download in the earlier step and run the script. The installation is a 5-step process and it takes a few minutes to complete. As you can see, the installation completed successfully. Let’s go back to the OpenShift console to view the results. In the list of “Installed operators”, I now see the Red Hat Marketplace operator with a status of “Succeeded”.
One last step before installing the software is to reload the cluster worker nodes. This step can take about 15-20 minutes to complete depending on the work node count in the cluster.
Prior to installing a product, I want to create a project in the OpenShift cluster where it should get installed. I’m going to create a project called PostgreSQL-demo for the install. Navigate back to the product tile in the “My software” list and open the product. It opens the Operator tab with a list of clusters where this product is installed.
To install the product on the demo cluster, click on the “Install operator” button. Leave the default selection for “Update channel” and “Approval strategy”. Selecting “Automatic” for approval strategy will ensure an automatic upgrade of the product when available. Select the “demo-cluster” checkbox and pick the project we created earlier for PostgreSQL installation. Click on the “Install” button. The “demo-cluster” appears in the list with a status of “Installing”. Let’s go back to the cluster to see the changes. It may take a few minutes before the actual install begins.
Click on the tab in the operator to view the details about subscription, events, instances, primary cluster member, etc. You are now ready to install an instance of PostgreSQL database. To continue with the next steps, go back to the product documentation page in the Red Hat Marketplace. Click on the QuickStart guide to complete the remaining installation.
The “Dashboard” link at the top provides you a summary of deployments and subscriptions, total active subscriptions, monthly charge, and monthly spend. Under the Account page, I can see the profile information. “Account settings” show the account name, ID and the status. Under “My team”, you see a list of users that are part of this account. Bring in additional users by sending them an invite. Enter a comma-separated email list, assign the roles, and click on “Invite”.
Software vendors can provide general or specialized offers based on your software consumption and you will see that in the “My offers” page. Under “Billing”, you can see pending charges, invoice history, and payment method. The “Pull secrets” page shows the complete list of secrets that have been generated for this account.
In this session, I talked about what Red Hat Marketplace is and how operators can be used for the automation of software deployments. We then looked at the Red Hat Marketplace portal, set up an OpenShift cluster with the Red Hat Marketplace operator and then installed PostgreSQL on that cluster. I hope this session gave you a good overview on Red Hat Marketplace and how to get started. Go ahead and give it a try today! Thank you!