We provide a field console
in CRD to define nebula console settings for NebulaGraph.
The console field is an object.
Here is the configuration file for NebulaCluster which have a console field:
apiVersion: apps.nebula-graph.io/v1alpha1
kind: NebulaCluster
metadata:
name: nebula
namespace: default
spec:
console:
image: vesoft/nebula-console
version: nightly
username: "demo"
password: "test"
If you enable enable_ssl
or enable_graph_ssl
to true in the config
field, nebula-console will enable SSL when connecting to Graphd.
At the same time, you need to configure CA and Client certificates within sslCerts.
spec:
sslCerts:
caCert: root.crt
caSecret: ca-cert
clientCert: tls.crt
clientKey: tls.key
clientSecret: client-cert
Here is the output of a Running state pod:
apiVersion: v1
kind: Pod
metadata:
labels:
app.kubernetes.io/cluster: nebula
app.kubernetes.io/component: console
app.kubernetes.io/managed-by: nebula-operator
app.kubernetes.io/name: nebula-graph
name: nebula-console
namespace: default
ownerReferences:
- apiVersion: apps.nebula-graph.io/v1alpha1
blockOwnerDeletion: true
controller: true
kind: NebulaCluster
name: nebula
uid: af183364-4fc1-4183-9e0a-e5c552a2df33
spec:
containers:
- command:
- nebula-console
- -addr
- nebula-graphd-svc
- -port
- "9669"
- -u
- root
- -p
- nebula
- -enable_ssl
- -ssl_cert_path
- /tmp/client.crt
- -ssl_private_key_path
- /tmp/client.key
- -ssl_root_ca_path
- /tmp/ca.crt
image: vesoft/nebula-console:nightly
imagePullPolicy: Always
name: console
stdin: true
stdinOnce: true
tty: true
volumeMounts:
- mountPath: /tmp/client.crt
name: client-crt
readOnly: true
subPath: client.crt
- mountPath: /tmp/client.key
name: client-key
readOnly: true
subPath: client.key
- mountPath: /tmp/ca.crt
name: client-ca-crt
readOnly: true
subPath: ca.crt
schedulerName: default-scheduler
serviceAccountName: nebula-sa
volumes:
- name: client-crt
secret:
items:
- key: tls.crt
path: client.crt
secretName: client-cert
- name: client-key
secret:
items:
- key: tls.key
path: client.key
secretName: client-cert
- name: client-ca-crt
secret:
items:
- key: root.crt
path: ca.crt
secretName: ca-cert