此内容没有您所选择的语言版本。
Chapter 2. Spinning Up Data Grid Clusters
You create Data Grid clusters from custom resource definitions.
Prerequisites
Install the Data Grid Operator from the OperatorHub.
2.1. Creating Minimal Data Grid Clusters 复制链接链接已复制到粘贴板!
Quickly spin up a Data Grid cluster with two nodes and let the Data Grid Operator generate credentials. You can retrieve the credentials from the pods after you create the Data Grid cluster. However, because Data Grid clusters require authentication, you cannot connect to the pods without the credentials.
Procedure
Create a custom resource
yamlfor the minimal cluster.$ cat > cr_minimal.yaml<<EOF apiVersion: infinispan.org/v1 kind: Infinispan metadata: name: example-rhdg spec: replicas: 2 EOF-
replicasspecifies the number of nodes in the Data Grid cluster.
-
Apply the custom resource
yaml.$ oc apply -f cr_minimal.yamlVerify that the Data Grid Operator creates the pods.
$ oc get pods -w NAME READY STATUS RESTARTS AGE example-rhdg-1 0/1 ContainerCreating 0 4s example-rhdg-2 0/1 ContainerCreating 0 4s example-rhdg-3 0/1 ContainerCreating 0 5s infinispan-operator-0 1/1 Running 0 3m example-rhdg-3 1/1 Running 0 8s example-rhdg-2 1/1 Running 0 8s example-rhdg-1 1/1 Running 0 8s
2.2. Creating Data Grid Clusters with Credentials 复制链接链接已复制到粘贴板!
Create secrets that contain credentials so application users can authenticate to Data Grid nodes. You can then specify the name of the secret in a custom resource yaml and spin up clusters with the Data Grid Operator.
Procedure
Create a secret that contains credentials for the application user.
Add an authentication secret
yaml, for example:$ cat > connect_secret.yaml<<EOF apiVersion: v1 kind: Secret metadata: name: connect-secret type: Opaque stringData: username: developer password: changeme EOFThe secret must:
-
Be
type: Opaque. Have
usernameandpasswordfields.ImportantThe preceding authentication secret contains sample values for the
usernameandpasswordfields. You should replace these values with credentials that conform to your organization’s security requirements.
-
Be
Apply the authentication secret
yaml.$ oc apply -f connect_secret.yaml
Create a custom resource
yamlfor the cluster that includes the name of the secret that contains your credentials.$ cat > cr_minimal_with_auth.yaml<<EOF apiVersion: infinispan.org/v1 kind: Infinispan metadata: name: example-rhdg spec: replicas: 2 connector: authentication: type: Credentials secretName: connect-secret EOF-
replicasspecifies the number of nodes in the Data Grid cluster. -
connectorconfigures how users connect to Data Grid nodes to store and retrieve data.
-
Apply the custom resource
yaml.$ oc apply -f cr_minimal_with_auth.yamlVerify that the Data Grid Operator creates the pods.
$ oc get pods -w NAME READY STATUS RESTARTS AGE example-rhdg-1 0/1 ContainerCreating 0 4s example-rhdg-2 0/1 ContainerCreating 0 4s example-rhdg-3 0/1 ContainerCreating 0 5s infinispan-operator-0 1/1 Running 0 3m example-rhdg-3 1/1 Running 0 8s example-rhdg-2 1/1 Running 0 8s example-rhdg-1 1/1 Running 0 8s
2.3. Verifying Data Grid Clusters 复制链接链接已复制到粘贴板!
Review log messages to verify that the Data Grid Operator has successfully created a Data Grid cluster.
Procedure
Verify that the Data Grid nodes can discover each other, for example:
$ oc logs example-rhdg-0 | grep DNS_PING INFO Configuring JGroups discovery protocol to openshift.DNS_PING INFO [org.jgroups.protocols.openshift.DNS_PING] (MSC service thread 1-2) serviceName [my-namespace] set; clustering enabledVerify that the nodes have received a clustered view. Do either of the following:
Retrieve the cluster view from the pod log files.
$ oc logs example-rhdg-0 | grep ISPN000094 INFO [org.infinispan.CLUSTER] (MSC service thread 1-2) \ ISPN000094: Received new cluster view for channel cluster: \ [example-rhdg-0|0] (1) [example-rhdg-0] INFO [org.infinispan.CLUSTER] (jgroups-3,{example_crd_name-0) \ ISPN000094: Received new cluster view for channel cluster: \ [example-rhdg-0|1] (2) [example-rhdg-0, example-rhdg-1]Retrieve the custom resource type for the Data Grid Operator.
$ oc get infinispan -o yamlThe output of the preceding command contains the following message to indicate that the Data Grid nodes have received a clustered view:
conditions: - message: 'View: [example-rhdg-0, example-rhdg-1]' status: "True" type: wellFormed