Skip to content

Latest commit

 

History

History
111 lines (91 loc) · 3.44 KB

bundle.md

File metadata and controls

111 lines (91 loc) · 3.44 KB
title description lead date lastmod draft images menu weight toc
Bundle
Bundle ArtemisCloud.io
Bundle ArtemisCloud.io
2020-10-06 08:49:31 +0000
2020-10-06 08:49:31 +0000
false
docs
parent
help
630
true

Bundle

Operator Lifecycle Manager (OLM)

The Operator Lifecycle Manager can help users to install and manage operators. The ArtemisCloud operator can be built into a bundle image and installed into OLM.

Install OLM

Check out the latest releases on github for release-specific install instructions.

Create a repository

Create a repository that Kubernetes will uses to pull your catalog image. You can create a public one for free on quay.io, see how to create a repo.

Build a catalog image

Set your repository in CATALOG_IMG and execute the following command:

make CATALOG_IMG=quay.io/my-org/activemq-artemis-operator-index:latest catalog-build

Push a catalog image

Set your repository in CATALOG_IMG and execute the following command:

make CATALOG_IMG=quay.io/my-org/activemq-artemis-operator-index:latest catalog-push

Create a catalog source (e.g. catalog-source.yaml):

Before creating the catalog source, ensure to update the image field within the spec section with your own built catalog image specified by the CATALOG_IMG environment variable. For the CATALOG_IMG, refer to the Build a catalog image section.

apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
  name: activemq-artemis-operator-source
  namespace: operators
spec:
  displayName: ActiveMQ Artemis Operators
  image: quay.io/my-org/activemq-artemis-operator-index:latest
  sourceType: grpc

and deploy it:

$ kubectl create -f catalog-source.yaml

In a moment you will see the index image is up and running in namespace operators:

$ kubectl get pod -n operators
NAME                                      READY   STATUS    RESTARTS   AGE
activemq-artemis-operator-source-g94fd    1/1     Running   0          42s

Create a subscription (e.g. subscription.yaml)

apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: activemq-artemis-operator-subscription
  namespace: operators
spec:
  channel: upstream
  name: activemq-artemis-operator
  source: activemq-artemis-operator-source
  sourceNamespace: operators

and deploy it:

  $ kubectl create -f subscription.yaml

An operator will be installed into operators namespace.

$ kubectl get pod -n operators
NAME                                                              READY   STATUS      RESTARTS   AGE
069c5d363d51fc04d639086da1c5180883a6cea8ec9d9f9eedde1a55f6v7jsq   0/1     Completed   0          9m55s
activemq-artemis-controller-manager-54c99b9df6-6xdzh              1/1     Running     0          9m28s
activemq-artemis-operator-source-g94fd                            1/1     Running     0          58m

Create a single ActiveMQ Artemis

This step creates a single ActiveMQ Artemis broker instance by applying the custom resource (CR) defined in artemis_single.yaml file.

$ kubectl apply -f examples/artemis/artemis_single.yaml

To check the status of the broker, run:

$ kubectl get ActivemqArtemis 
NAME             READY   AGE
artemis-broker   True    39s