Skip to content

Commit d5a1a6a

Browse files
Kubernetes Enterprise Operator Release 1.23.0 (#270)
* Updated * Updated
1 parent 2bb1053 commit d5a1a6a

File tree

14 files changed

+412
-250
lines changed

14 files changed

+412
-250
lines changed

crds.yaml

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -304,9 +304,6 @@ spec:
304304
credentials:
305305
description: Name of the Secret holding credentials information
306306
type: string
307-
exposedExternally:
308-
description: 'DEPRECATED: use ExternalAccessConfiguration instead'
309-
type: boolean
310307
externalAccess:
311308
description: ExternalAccessConfiguration provides external access
312309
configuration.
@@ -1205,9 +1202,6 @@ spec:
12051202
on one mapping with the service-account created in the central
12061203
cluster to talk to the workload clusters.
12071204
type: string
1208-
exposedExternally:
1209-
description: 'DEPRECATED: use ExternalAccessConfiguration instead'
1210-
type: boolean
12111205
externalAccess:
12121206
description: ExternalAccessConfiguration provides external access
12131207
configuration for Multi-Cluster.
@@ -1315,9 +1309,6 @@ spec:
13151309
default, if not specified the operator would create the duplicate
13161310
svc objects.'
13171311
type: boolean
1318-
exposedExternally:
1319-
description: 'DEPRECATED: use ExternalAccessConfiguration instead'
1320-
type: boolean
13211312
externalAccess:
13221313
description: ExternalAccessConfiguration provides external access
13231314
configuration.
@@ -1989,6 +1980,8 @@ spec:
19891980
name: v1
19901981
schema:
19911982
openAPIV3Schema:
1983+
description: The MongoDBOpsManager resource allows you to deploy Ops Manager
1984+
within your Kubernetes cluster
19921985
properties:
19931986
apiVersion:
19941987
description: 'APIVersion defines the versioned schema of this representation
@@ -2157,10 +2150,6 @@ spec:
21572150
have a one on one mapping with the service-account created
21582151
in the central cluster to talk to the workload clusters.
21592152
type: string
2160-
exposedExternally:
2161-
description: 'DEPRECATED: use ExternalAccessConfiguration
2162-
instead'
2163-
type: boolean
21642153
externalAccess:
21652154
description: ExternalAccessConfiguration provides external
21662155
access configuration for Multi-Cluster.
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
ARG imagebase
2+
FROM ${imagebase} as base
3+
4+
FROM registry.access.redhat.com/ubi8/ubi-minimal
5+
6+
ARG agent_version
7+
8+
LABEL name="MongoDB Agent" \
9+
version="${agent_version}" \
10+
summary="MongoDB Agent" \
11+
description="MongoDB Agent" \
12+
vendor="MongoDB" \
13+
release="1" \
14+
maintainer="support@mongodb.com"
15+
16+
RUN microdnf install -y --disableplugin=subscription-manager curl \
17+
hostname nss_wrapper tar gzip procps\
18+
&& microdnf upgrade -y \
19+
&& rm -rf /var/lib/apt/lists/*
20+
21+
RUN mkdir -p /agent \
22+
&& mkdir -p /var/lib/mongodb-mms-automation \
23+
&& mkdir -p /var/log/mongodb-mms-automation/ \
24+
&& chmod -R +wr /var/log/mongodb-mms-automation/ \
25+
# ensure that the agent user can write the logs in OpenShift
26+
&& touch /var/log/mongodb-mms-automation/readiness.log \
27+
&& chmod ugo+rw /var/log/mongodb-mms-automation/readiness.log
28+
29+
30+
COPY --from=base /data/mongodb-agent.tar.gz /agent
31+
COPY --from=base /data/mongodb-tools.tgz /agent
32+
COPY --from=base /data/LICENSE /licenses/LICENSE
33+
34+
RUN tar xfz /agent/mongodb-agent.tar.gz \
35+
&& mv mongodb-mms-automation-agent-*/mongodb-mms-automation-agent /agent/mongodb-agent \
36+
&& chmod +x /agent/mongodb-agent \
37+
&& mkdir -p /var/lib/automation/config \
38+
&& chmod -R +r /var/lib/automation/config \
39+
&& rm /agent/mongodb-agent.tar.gz \
40+
&& rm -r mongodb-mms-automation-agent-*
41+
42+
RUN tar xfz /agent/mongodb-tools.tgz --directory /var/lib/mongodb-mms-automation/ && rm /agent/mongodb-tools.tgz
43+
44+
USER 2000
45+
CMD ["/agent/mongodb-agent", "-cluster=/var/lib/automation/config/automation-config.json"]

dockerfiles/mongodb-enterprise-database/2.0.2/ubi/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ RUN microdnf install -y --disableplugin=subscription-manager \
4949
findutils
5050

5151

52+
RUN microdnf remove perl-IO-Socket-SSL
5253

5354
RUN ln -s /usr/lib64/libsasl2.so.3 /usr/lib64/libsasl2.so.2
5455

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
ARG imagebase
2+
FROM ${imagebase} as base
3+
4+
FROM registry.access.redhat.com/ubi8/ubi-minimal
5+
6+
ARG version
7+
LABEL name="MongoDB Enterprise Init AppDB" \
8+
version="mongodb-enterprise-init-appdb-${version}" \
9+
summary="MongoDB Enterprise AppDB Init Image" \
10+
description="Startup Scripts for MongoDB Enterprise Application Database for Ops Manager" \
11+
release="1" \
12+
vendor="MongoDB" \
13+
maintainer="support@mongodb.com"
14+
15+
COPY --from=base /data/readinessprobe /probes/readinessprobe
16+
COPY --from=base /data/probe.sh /probes/probe.sh
17+
COPY --from=base /data/scripts/ /scripts/
18+
COPY --from=base /data/licenses /licenses/
19+
COPY --from=base /data/version-upgrade-hook /probes/version-upgrade-hook
20+
21+
22+
RUN microdnf update --nodocs \
23+
&& microdnf -y install --nodocs tar gzip \
24+
&& microdnf clean all
25+
26+
COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz
27+
28+
29+
RUN tar xfz /tools/mongodb_tools.tgz --directory /tools \
30+
&& rm /tools/mongodb_tools.tgz
31+
32+
USER 2000
33+
ENTRYPOINT [ "/bin/cp", "-f", "-r", "/scripts/agent-launcher.sh", "/scripts/agent-launcher-lib.sh", "/probes/readinessprobe", "/probes/probe.sh", "/tools", "/opt/scripts/" ]
34+
35+
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
ARG imagebase
2+
FROM ${imagebase} as base
3+
4+
FROM registry.access.redhat.com/ubi8/ubi-minimal
5+
6+
ARG version
7+
LABEL name="MongoDB Enterprise Init Database" \
8+
version="mongodb-enterprise-init-database-${version}" \
9+
summary="MongoDB Enterprise Database Init Image" \
10+
description="Startup Scripts for MongoDB Enterprise Database" \
11+
release="1" \
12+
vendor="MongoDB" \
13+
maintainer="support@mongodb.com"
14+
15+
COPY --from=base /data/readinessprobe /probes/readinessprobe
16+
COPY --from=base /data/probe.sh /probes/probe.sh
17+
COPY --from=base /data/scripts/ /scripts/
18+
COPY --from=base /data/licenses /licenses/
19+
20+
21+
RUN microdnf update --nodocs \
22+
&& microdnf -y install --nodocs tar gzip \
23+
&& microdnf clean all
24+
25+
COPY --from=base /data/mongodb_tools_ubi.tgz /tools/mongodb_tools.tgz
26+
27+
28+
RUN tar xfz /tools/mongodb_tools.tgz --directory /tools \
29+
&& rm /tools/mongodb_tools.tgz
30+
31+
USER 2000
32+
ENTRYPOINT [ "/bin/cp", "-f", "-r", "/scripts/agent-launcher.sh", "/scripts/agent-launcher-lib.sh", "/probes/readinessprobe", "/probes/probe.sh", "/tools", "/opt/scripts/" ]
33+
34+
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#
2+
# Base Template Dockerfile for Operator Image.
3+
#
4+
5+
ARG imagebase
6+
FROM ${imagebase} as base
7+
8+
FROM registry.access.redhat.com/ubi8/ubi-minimal
9+
10+
11+
LABEL name="MongoDB Enterprise Operator" \
12+
maintainer="support@mongodb.com" \
13+
vendor="MongoDB" \
14+
version="1.23.0" \
15+
release="1" \
16+
summary="MongoDB Enterprise Operator Image" \
17+
description="MongoDB Enterprise Operator Image"
18+
19+
20+
# Building an UBI-based image: https://red.ht/3n6b9y0
21+
RUN microdnf update \
22+
--disableplugin=subscription-manager \
23+
--disablerepo=* --enablerepo=ubi-8-appstream-rpms --enablerepo=ubi-8-baseos-rpms -y \
24+
&& rm -rf /var/cache/yum
25+
26+
27+
28+
29+
COPY --from=base /data/mongodb-enterprise-operator /usr/local/bin/mongodb-enterprise-operator
30+
COPY --from=base /data/om_version_mapping.json /usr/local/om_version_mapping.json
31+
COPY --from=base /data/licenses /licenses/
32+
33+
USER 2000
34+
35+
36+
37+
ENTRYPOINT exec /usr/local/bin/mongodb-enterprise-operator
38+
39+
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
ARG imagebase
2+
FROM ${imagebase} as base
3+
4+
FROM registry.access.redhat.com/ubi8/ubi-minimal
5+
6+
7+
LABEL name="MongoDB Enterprise Ops Manager" \
8+
maintainer="support@mongodb.com" \
9+
vendor="MongoDB" \
10+
version="6.0.19" \
11+
release="1" \
12+
summary="MongoDB Enterprise Ops Manager Image" \
13+
description="MongoDB Enterprise Ops Manager"
14+
15+
16+
ENV MMS_HOME /mongodb-ops-manager
17+
ENV MMS_PROP_FILE ${MMS_HOME}/conf/conf-mms.properties
18+
ENV MMS_CONF_FILE ${MMS_HOME}/conf/mms.conf
19+
ENV MMS_LOG_DIR ${MMS_HOME}/logs
20+
ENV MMS_TMP_DIR ${MMS_HOME}/tmp
21+
22+
EXPOSE 8080
23+
24+
# OpsManager docker image needs to have the MongoDB dependencies because the
25+
# backup daemon is running its database locally
26+
27+
RUN microdnf install --disableplugin=subscription-manager -y \
28+
cyrus-sasl \
29+
cyrus-sasl-gssapi \
30+
cyrus-sasl-plain \
31+
krb5-libs \
32+
libcurl \
33+
libpcap \
34+
lm_sensors-libs \
35+
net-snmp \
36+
net-snmp-agent-libs \
37+
openldap \
38+
openssl \
39+
tar \
40+
rpm-libs \
41+
net-tools \
42+
procps-ng \
43+
ncurses
44+
45+
46+
COPY --from=base /data/licenses /licenses/
47+
48+
49+
50+
RUN curl --fail -L -o ops_manager.tar.gz https://downloads.mongodb.com/on-prem-mms/tar/mongodb-mms-6.0.19.100.20231002T1346Z.tar.gz \
51+
&& tar -xzf ops_manager.tar.gz \
52+
&& rm ops_manager.tar.gz \
53+
&& mv mongodb-mms* "${MMS_HOME}"
54+
55+
56+
# permissions
57+
RUN chmod -R 0777 "${MMS_LOG_DIR}" \
58+
&& chmod -R 0777 "${MMS_TMP_DIR}" \
59+
&& chmod -R 0775 "${MMS_HOME}/conf" \
60+
&& chmod -R 0775 "${MMS_HOME}/jdk" \
61+
&& mkdir "${MMS_HOME}/mongodb-releases/" \
62+
&& chmod -R 0775 "${MMS_HOME}/mongodb-releases" \
63+
&& chmod -R 0777 "${MMS_CONF_FILE}" \
64+
&& chmod -R 0777 "${MMS_PROP_FILE}"
65+
66+
# The "${MMS_HOME}/conf" will be populated by the docker-entry-point.sh.
67+
# For now we need to move into the templates directory.
68+
RUN cp -r "${MMS_HOME}/conf" "${MMS_HOME}/conf-template"
69+
70+
USER 2000
71+
72+
# operator to change the entrypoint to: /mongodb-ops-manager/bin/mongodb-mms start_mms (or a wrapper around this)
73+
ENTRYPOINT [ "sleep infinity" ]
74+
75+
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
ARG imagebase
2+
FROM ${imagebase} as base
3+
4+
FROM registry.access.redhat.com/ubi8/ubi-minimal
5+
6+
7+
LABEL name="MongoDB Enterprise Ops Manager" \
8+
maintainer="support@mongodb.com" \
9+
vendor="MongoDB" \
10+
version="6.0.20" \
11+
release="1" \
12+
summary="MongoDB Enterprise Ops Manager Image" \
13+
description="MongoDB Enterprise Ops Manager"
14+
15+
16+
ENV MMS_HOME /mongodb-ops-manager
17+
ENV MMS_PROP_FILE ${MMS_HOME}/conf/conf-mms.properties
18+
ENV MMS_CONF_FILE ${MMS_HOME}/conf/mms.conf
19+
ENV MMS_LOG_DIR ${MMS_HOME}/logs
20+
ENV MMS_TMP_DIR ${MMS_HOME}/tmp
21+
22+
EXPOSE 8080
23+
24+
# OpsManager docker image needs to have the MongoDB dependencies because the
25+
# backup daemon is running its database locally
26+
27+
RUN microdnf install --disableplugin=subscription-manager -y \
28+
cyrus-sasl \
29+
cyrus-sasl-gssapi \
30+
cyrus-sasl-plain \
31+
krb5-libs \
32+
libcurl \
33+
libpcap \
34+
lm_sensors-libs \
35+
net-snmp \
36+
net-snmp-agent-libs \
37+
openldap \
38+
openssl \
39+
tar \
40+
rpm-libs \
41+
net-tools \
42+
procps-ng \
43+
ncurses
44+
45+
46+
COPY --from=base /data/licenses /licenses/
47+
48+
49+
50+
RUN curl --fail -L -o ops_manager.tar.gz https://downloads.mongodb.com/on-prem-mms/tar/mongodb-mms-6.0.20.100.20231102T2129Z.tar.gz \
51+
&& tar -xzf ops_manager.tar.gz \
52+
&& rm ops_manager.tar.gz \
53+
&& mv mongodb-mms* "${MMS_HOME}"
54+
55+
56+
# permissions
57+
RUN chmod -R 0777 "${MMS_LOG_DIR}" \
58+
&& chmod -R 0777 "${MMS_TMP_DIR}" \
59+
&& chmod -R 0775 "${MMS_HOME}/conf" \
60+
&& chmod -R 0775 "${MMS_HOME}/jdk" \
61+
&& mkdir "${MMS_HOME}/mongodb-releases/" \
62+
&& chmod -R 0775 "${MMS_HOME}/mongodb-releases" \
63+
&& chmod -R 0777 "${MMS_CONF_FILE}" \
64+
&& chmod -R 0777 "${MMS_PROP_FILE}"
65+
66+
# The "${MMS_HOME}/conf" will be populated by the docker-entry-point.sh.
67+
# For now we need to move into the templates directory.
68+
RUN cp -r "${MMS_HOME}/conf" "${MMS_HOME}/conf-template"
69+
70+
USER 2000
71+
72+
# operator to change the entrypoint to: /mongodb-ops-manager/bin/mongodb-mms start_mms (or a wrapper around this)
73+
ENTRYPOINT [ "sleep infinity" ]
74+
75+

0 commit comments

Comments
 (0)