Bundle
Bundle ArtemisCloud.io
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