Skip to content

Commit 7bb6cb3

Browse files
committed
CSPL-1728: documentation changes for 2.0.0 release
Signed-off-by: vivekr-splunk <[email protected]>
1 parent 42662f3 commit 7bb6cb3

File tree

5 files changed

+123
-82
lines changed

5 files changed

+123
-82
lines changed

docs/ChangeLog.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,20 @@
11
# Splunk Operator for Kubernetes Change Log
22

3+
## 2.0.0 (2022-05-27)
4+
5+
* This is the 2.0.0 release. The Splunk Operator for Kubernetes is a supported platform for deploying Splunk Enterprise with the prerequisites and constraints laid out [here](https://github.com/splunk/splunk-operator/blob/master/docs/README.md#prerequisites-for-the-splunk-operator)
6+
7+
* Operator SDK upgraded to version 1.21.0. Operator upgrade steps with necessary script updated [here](https://github.com/splunk/splunk-operator/blob/master/docs/SplunkOperatorUpgrade.md)
8+
9+
* Introducing Monitoring Console CRD
10+
11+
* Functional QA automation enhancements
12+
13+
* Documentation Updates
14+
15+
* Changed to App Framework
16+
17+
318
## 1.1.0 (2022-04-12)
419

520
* This is the 1.1.0 release. The Splunk Operator for Kubernetes is a supported platform for deploying Splunk Enterprise with the prerequisites and constraints laid out [here](https://github.com/splunk/splunk-operator/blob/master/docs/README.md#prerequisites-for-the-splunk-operator)

docs/Images.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
The Splunk Operator requires these docker images to be present or available to your Kubernetes cluster:
44

5-
* `splunk/splunk-operator`: The Splunk Operator image built by this repository or the [official release](https://hub.docker.com/r/splunk/splunk-operator) (1.1.0 or later)
5+
* `splunk/splunk-operator`: The Splunk Operator image built by this repository or the [official release](https://hub.docker.com/r/splunk/splunk-operator) (2.0.0 or later)
66
* `splunk/splunk:<version>`: The [Splunk Enterprise image](https://github.com/splunk/docker-splunk) (8.2.6 or later)
77

88
All of these images are publicly available, and published on [Docker Hub](https://hub.docker.com/).

docs/Install.md

Lines changed: 38 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -7,59 +7,45 @@
77
If you want to customize the installation of the Splunk Operator, download a copy of the installation YAML locally, and open it in your favorite editor.
88

99
```
10-
wget -O splunk-operator-cluster.yaml https://github.com/splunk/splunk-operator/releases/download/1.1.0/splunk-operator-cluster.yaml
10+
wget -O splunk-operator-cluster.yaml https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-cluster.yaml
1111
```
1212

1313
## Default Installation
1414

15-
By default operator will be installed in `splunk-operator` namespace and will watch all the namespaces of your cluster for splunk enterprise custom resources
15+
By default operator will be installed in `splunk-operator` namespace and based on the file used it can be installed cluster-wide or namespace scoped. By installing `splunk-operator-cluster.yaml` Operator will watch all the namespaces of your cluster for splunk enterprise custom resources
1616

1717
```
18-
wget -O splunk-operator-cluster.yaml https://github.com/splunk/splunk-operator/releases/download/1.1.0/splunk-operator-cluster.yaml
18+
wget -O splunk-operator-cluster.yaml https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-cluster.yaml
1919
kubectl apply -f splunk-operator-cluster.yaml
2020
```
2121

22-
## Install operator to watch single namespace
23-
24-
By default operator will be installed in `splunk-operator` namespace and will watch all the namespaces of your cluster for splunk enterprise custom resources. If user wants to watch only one namespace then edit `config-map` `splunk-operator-config` in `splunk-operator` namespace, set `WATCH_NAMESPACE` field to the namespace operator should watch
25-
26-
```
27-
apiVersion: v1
28-
data:
29-
OPERATOR_NAME: '"splunk-operator"'
30-
RELATED_IMAGE_SPLUNK_ENTERPRISE: splunk/splunk:latest
31-
WATCH_NAMESPACE: "namespace1"
32-
kind: ConfigMap
33-
metadata:
34-
labels:
35-
name: splunk-operator
36-
name: splunk-operator-config
37-
namespace: splunk-operator
38-
```
39-
4022
## Install operator to watch multiple namespaces
4123

42-
If user wants to manage multiple namespaces, they must add the namespaces to the WATCH_NAMESPACE field, with each namespace separated by a comma (,). example
24+
If Splunk Operator is installed clusterwide and user wants to manage multiple namespaces, they must add the namespaces to the WATCH_NAMESPACE field with each namespace separated by a comma (,). Edit `deployment` `splunk-operator-controller-manager-<podid>` in `splunk-operator` namespace, set `WATCH_NAMESPACE` field to the namespace that needs to be monitored by Splunk Operator
4325

26+
```yaml
27+
...
28+
env:
29+
- name: WATCH_NAMESPACE
30+
value: "namespace1,namespace2"
31+
- name: RELATED_IMAGE_SPLUNK_ENTERPRISE
32+
value: splunk/splunk:8.2.6
33+
- name: OPERATOR_NAME
34+
value: splunk-operator
35+
- name: POD_NAME
36+
valueFrom:
37+
fieldRef:
38+
apiVersion: v1
39+
fieldPath: metadata.name
40+
...
4441
```
45-
apiVersion: v1
46-
data:
47-
OPERATOR_NAME: '"splunk-operator"'
48-
RELATED_IMAGE_SPLUNK_ENTERPRISE: splunk/splunk:latest
49-
WATCH_NAMESPACE: "namespace1,namespace2"
50-
kind: ConfigMap
51-
metadata:
52-
labels:
53-
name: splunk-operator
54-
name: splunk-operator-config
55-
namespace: splunk-operator
56-
```
42+
5743
## Install operator to watch single namespace with restrictive permission
5844

59-
In order to install operator with restrictive permission to watch only single namespace use [splunk-operator-namespace.yaml](https://github.com/splunk/splunk-operator/releases/download/1.1.0/splunk-operator-namespace.yaml). This will create Role and Role-Binding to only watch single namespace. By default operator will be installed in `splunk-operator` namespace, user can edit the file to change the namespace
45+
In order to install operator with restrictive permission to watch only single namespace use [splunk-operator-namespace.yaml](https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-namespace.yaml). This will create Role and Role-Binding to only watch single namespace. By default operator will be installed in `splunk-operator` namespace, user can edit the file to change the namespace
6046

6147
```
62-
wget -O splunk-operator-namespace.yaml https://github.com/splunk/splunk-operator/releases/download/1.1.0/splunk-operator-namespace.yaml
48+
wget -O splunk-operator-namespace.yaml https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-namespace.yaml
6349
kubectl apply -f splunk-operator-namespace.yaml
6450
```
6551

@@ -72,20 +58,23 @@ If you plan to retag the container images as part of pushing it to a private reg
7258
image: splunk/splunk-operator
7359
```
7460
75-
If you are using a private registry for the Docker images, edit `config-map` `splunk-operator-config` in `splunk-operator` namespace, set `RELATED_IMAGE_SPLUNK_ENTERPRISE` field splunk docker image path
61+
If you are using a private registry for the Docker images, edit `deployment` `splunk-operator-controller-manager-xxxx` in `splunk-operator` namespace, set `RELATED_IMAGE_SPLUNK_ENTERPRISE` field splunk docker image path
7662

77-
```
78-
apiVersion: v1
79-
data:
80-
OPERATOR_NAME: '"splunk-operator"'
81-
RELATED_IMAGE_SPLUNK_ENTERPRISE: splunk/splunk:latest
82-
WATCH_NAMESPACE: ""
83-
kind: ConfigMap
84-
metadata:
85-
labels:
86-
name: splunk-operator
87-
name: splunk-operator-config
88-
namespace: splunk-operator
63+
```yaml
64+
...
65+
env:
66+
- name: WATCH_NAMESPACE
67+
value: "namespace1,namespace2"
68+
- name: RELATED_IMAGE_SPLUNK_ENTERPRISE
69+
value: splunk/splunk:8.2.6
70+
- name: OPERATOR_NAME
71+
value: splunk-operator
72+
- name: POD_NAME
73+
valueFrom:
74+
fieldRef:
75+
apiVersion: v1
76+
fieldPath: metadata.name
77+
...
8978
```
9079

9180
## Cluster Domain

docs/README.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Apps and add-ons can be installed using the Splunk Operator by following the ins
5959
### Docker requirements
6060
The Splunk Operator requires these docker images to be present or available to your Kubernetes cluster:
6161

62-
* `splunk/splunk-operator`: The Splunk Operator image built by this repository or the [official release](https://hub.docker.com/r/splunk/splunk-operator) (1.1.0 or later)
62+
* `splunk/splunk-operator`: The Splunk Operator image built by this repository or the [official release](https://hub.docker.com/r/splunk/splunk-operator) (2.0.0 or later)
6363
* `splunk/splunk:<version>`: The [Splunk Enterprise image](https://github.com/splunk/docker-splunk) (8.2.6 or later)
6464

6565
All of the Splunk Enterprise images are publicly available on [Docker Hub](https://hub.docker.com/). If your cluster does not have access to pull from Docker Hub, see the [Required Images Documentation](Images.md) page.
@@ -106,11 +106,18 @@ For production environments, we are requiring the use of Splunk SmartStore. As a
106106

107107
## Installing the Splunk Operator
108108

109-
A Kubernetes cluster administrator can install and start the Splunk Operator by running:
109+
A Kubernetes cluster administrator can install and start the Splunk Operator for specific namespace by running:
110110
```
111-
kubectl apply -f https://github.com/splunk/splunk-operator/releases/download/1.1.0/splunk-operator-install.yaml
111+
kubectl apply -f https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-namespace.yaml
112112
```
113113

114+
A Kubernetes cluster administrator can install and start the Splunk Operator for cluster-wide by running:
115+
```
116+
kubectl apply -f https://github.com/splunk/splunk-operator/releases/download/2.0.0/splunk-operator-cluster.yaml
117+
```
118+
119+
The [Advanced Installation Instructions](Install.md) page offers guidance for advanced configurations, including the use of private image registries, installation at cluster scope, and installing the Splunk Operator as a user who is not a Kubernetes administrator. Users of Red Hat OpenShift should review the [Red Hat OpenShift](OpenShift.md) page.
120+
114121
The [Advanced Installation Instructions](Install.md) page offers guidance for advanced configurations, including the use of private image registries, installation at cluster scope, and installing the Splunk Operator as a user who is not a Kubernetes administrator. Users of Red Hat OpenShift should review the [Red Hat OpenShift](OpenShift.md) page.
115122

116123
*Note: We recommended that the Splunk Enterprise Docker image is copied to a private registry, or directly onto your Kubernetes workers before creating large Splunk Enterprise deployments. See the [Required Images Documentation](Images.md) page, and the [Advanced Installation Instructions](Install.md) page for guidance on working with copies of the Docker images.*

docs/SplunkOperatorUpgrade.md

Lines changed: 59 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# How to upgrade Splunk Operator and Splunk Enterprise Deployments
22

3-
To upgrade the Splunk Operator for Kubernetes, you will overwrite the prior Operator release with the latest version. Once the lastest version of `splunk-operator-install.yaml` ([see below](#upgrading-splunk-operator-and-splunk-operator-deployment)) is applied the CRD's are updated and Operator deployment is updated with newer version of Splunk Operator image. Any new spec defined by the operator will be applied to the pods managed by Splunk Operator for Kubernetes.
3+
To upgrade the Splunk Operator for Kubernetes, you will overwrite the prior Operator release with the latest version. Once the lastest version of `splunk-operator-namespace.yaml` ([see below](#upgrading-splunk-operator-and-splunk-operator-deployment)) is applied the CRD's are updated and Operator deployment is updated with newer version of Splunk Operator image. Any new spec defined by the operator will be applied to the pods managed by Splunk Operator for Kubernetes.
44
55
A Splunk Operator for Kubernetes upgrade might include support for a later version of the Splunk Enterprise Docker image. In that scenario, after the Splunk Operator completes its upgrade, the pods managed by Splunk Operator for Kubernetes will be restarted using the latest Splunk Enterprise Docker image.
66
@@ -16,7 +16,48 @@ A Splunk Operator for Kubernetes upgrade might include support for a later versi
1616
1717
* If you use forwarders, verify the Splunk Enterprise version compatibility with the forwarders in the [Compatibility between forwarders and Splunk Enterprise indexers](https://docs.splunk.com/Documentation/Forwarder/latest/Forwarder/Compatibilitybetweenforwardersandindexers) documentation.
1818
19-
## Upgrading Splunk Operator and Splunk Operator Deployment
19+
20+
21+
# Splunk Operator Upgrade
22+
23+
## Steps for upgrade from 1.1.0 to 2.0.0
24+
25+
1. Download the latest Splunk Operator installation yaml file.
26+
27+
```
28+
wget -O splunk-operator-namespace.yaml https://github.com/splunk/splunk-operator/releases/download/1.0.5/splunk-operator-namespace.yaml
29+
```
30+
31+
2. (Optional) Review the file and update it with your specific customizations used during your install.
32+
33+
3. Upgrade the Splunk Operator.
34+
35+
```
36+
kubectl apply -f splunk-operator-namespace.yaml
37+
```
38+
39+
After applying the yaml, a new operator pod will be created and the existing operator pod will be terminated. Example:
40+
41+
```
42+
kubectl get pods
43+
NAME READY STATUS RESTARTS AGE
44+
splunk-operator--controller-manager-75f5d4d85b-8pshn 1/1 Running 0 5s
45+
46+
```
47+
48+
If a Splunk Operator release changes the custom resource (CRD) API version, the administrator is responsible for updating their Custom Resource specification to reference the latest CRD API version.
49+
50+
If a Splunk Operator release includes an updated Splunk Enterprise Docker image, the operator upgrade will also initiate pod restart using the latest Splunk Enterprise Docker image.
51+
52+
## Steps for upgrade from 1.0.5 to 2.0.0
53+
54+
Upgrading the Splunk Operator from 1.0.5 or older version to Version 2.0.0 is a new installation rather than an upgrade from the current operator. The older Splunk Operator must be cleaned up before installing the new version. Script [upgrade-to-1.1.0.sh](https://github.com/splunk/splunk-operator/releases/download/2.0.0/upgrade-to-1.1.0.sh) helps you to do the cleanup. The script expects the current namespace where the operator is installed and the path to the 2.0.0 manifest file. The script performs the following steps
55+
56+
* Backup of all the operator resources within the namespace like
57+
** service-account, deployment, role, role-binding, cluster-role, cluster-role-binding
58+
* Deletes all the old Splunk Operator resources and deployment
59+
* Installs the operator 1.1.0 in Splunk-operator namespace.
60+
### Upgrading Splunk Operator and Splunk Operator Deployment
2061

2162
1. Download the upgrade script.
2263

@@ -34,19 +75,6 @@ wget -O splunk-operator-install.yaml https://github.com/splunk/splunk-operator/r
3475

3576
4. Upgrade the Splunk Operator.
3677

37-
# Splunk Operator Upgrade
38-
39-
Upgrading the Splunk Operator to Version 1.1.0 is a new installation rather than an upgrade from the current operator. The older Splunk Operator must be cleaned up before installing the new version. Script [upgrade-to-1.1.0.sh](https://github.com/splunk/splunk-operator/releases/download/1.1.0/upgrade-to-1.1.0.sh) helps you to do the cleanup. The script expects the current namespace where the operator is installed and the path to the 1.1.0 manifest file. The script performs the following steps
40-
41-
* Backup of all the operator resources within the namespace like
42-
** service-account, deployment, role, role-binding, cluster-role, cluster-role-binding
43-
* Deletes all the old Splunk Operator resources and deployment
44-
* Installs the operator 1.1.0 in Splunk-operator namespace.
45-
46-
By default Splunk Operator 1.1.0 will be installed to watch cluster-wide
47-
48-
## Steps for upgrade from 1.0.5 to 1.1.0
49-
5078
Set KUBECONFIG and run [upgrade-to-1.1.0.sh](https://github.com/splunk/splunk-operator/releases/download/1.1.0/upgrade-to-1.1.0.sh) script with the following mandatory arguments
5179

5280
* `current_namespace` current namespace where operator is installed
@@ -62,24 +90,26 @@ Note: This script can be run from `Mac` or `Linux` system. To run this script on
6290

6391
## Configuring Operator to watch specific namespace
6492

65-
Edit `configmap` `splunk-operator-config` in `splunk-operator` namespace, set `WATCH_NAMESPACE` field to the namespace that needs to be monitored by Splunk Operator
93+
If Splunk Operator is installed clusterwide then
94+
Edit `deployment` `splunk-operator-controller-manager-<podid>` in `splunk-operator` namespace, set `WATCH_NAMESPACE` field to the namespace that needs to be monitored by Splunk Operator
6695

6796
```yaml
68-
apiVersion: v1
69-
data:
70-
OPERATOR_NAME: "splunk-operator"
71-
RELATED_IMAGE_SPLUNK_ENTERPRISE: splunk/splunk:8.2.6
72-
WATCH_NAMESPACE: "add namespace here"
73-
kind: ConfigMap
74-
metadata:
75-
labels:
76-
name: splunk-operator
77-
name: splunk-operator-config
78-
namespace: splunk-operator
97+
...
98+
env:
99+
- name: WATCH_NAMESPACE
100+
value: "splunk-operator"
101+
- name: RELATED_IMAGE_SPLUNK_ENTERPRISE
102+
value: splunk/splunk:8.2.6
103+
- name: OPERATOR_NAME
104+
value: splunk-operator
105+
- name: POD_NAME
106+
valueFrom:
107+
fieldRef:
108+
apiVersion: v1
109+
fieldPath: metadata.name
110+
...
79111
```
80112
81-
If a Splunk Operator release changes the custom resource (CRD) API version, the administrator is responsible for updating their Custom Resource specification to reference the latest CRD API version.
82-
83113
If a Splunk Operator release includes an updated Splunk Enterprise Docker image, the operator upgrade will also initiate pod restart using the latest Splunk Enterprise Docker image.
84114

85115
## Verify Upgrade is Successful

0 commit comments

Comments
 (0)