Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Falco on OpenShift 4.6 #1354

Merged
merged 1 commit into from Jan 21, 2021

Conversation

kkujawa-sumo
Copy link
Contributor

@kkujawa-sumo kkujawa-sumo commented Jan 20, 2021

Description

Tested with:

helm upgrade --install collection -n sumologic -f deploy/helm/sumologic/values.yaml \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set sumologic.accessId="dummy" \
--set sumologic.accessKey="dummy" \
--set sumologic.endpoint="http://receiver-mock.receiver-mock:3000/terraform/api/" \
--set sumologic.clusterName="clusterkasi" \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set kube-prometheus-stack.prometheus-node-exporter.service.port=9200 \
--set kube-prometheus-stack.prometheus-node-exporter.service.targetPort=9200 \
--set sumologic.scc.create=true \
--set fluent-bit.securityContext.privileged=true \
--set falco.enabled=true \
deploy/helm/sumologic/

Tested migration from 2.0 using:

helm upgrade --install collection sumologic/sumologic  -n sumologic \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set sumologic.accessId="dummy" \
--set sumologic.accessKey="dummy" \
--set sumologic.endpoint="http://receiver-mock.receiver-mock:3000/terraform/api/" \
--set sumologic.clusterName="clusterkasi" \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set kube-prometheus-stack.prometheus-node-exporter.service.port=9200 \
--set kube-prometheus-stack.prometheus-node-exporter.service.targetPort=9200 \
--set sumologic.scc.create=true \
--set fluent-bit.securityContext.privileged=true \
--set falco.enabled=true \
--version=v2.0.0
helm upgrade --install collection -n sumologic -f deploy/helm/sumologic/values.yaml \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set sumologic.accessId="dummy" \
--set sumologic.accessKey="dummy" \
--set sumologic.endpoint="http://receiver-mock.receiver-mock:3000/terraform/api/" \
--set sumologic.clusterName="clusterkasi" \
--set kube-prometheus-stack.prometheusOperator.enabled=false \
--set kube-prometheus-stack.prometheus-node-exporter.service.port=9200 \
--set kube-prometheus-stack.prometheus-node-exporter.service.targetPort=9200 \
--set sumologic.scc.create=true \
--set fluent-bit.securityContext.privileged=true \
--set falco.enabled=true \
deploy/helm/sumologic/

Tested on vagrant using sumo-make upgrade


Testing performed
  • Redeploy fluentd and fluentd-events pods
  • Confirm events, logs, and metrics are coming in


### Falco

Falco does not provide modules for all kernels. When there is missing Falco module Falco tries to build it.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Falco does not provide modules for all kernels. When there is missing Falco module Falco tries to build it.
Falco does not provide modules for all kernels.
When Falco module is not available for particular kernel, Falco tries to build it.

The process of changing nodes configuration may require long time
during which Pods scheduled on unchanged nodes are in `Init` state.

Configuration of node can be verified by following annotations:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Configuration of node can be verified by following annotations:
Node configuration can be verified by following annotations:


Falco does not provide modules for all kernels.
When Falco module is not available for particular kernel, Falco tries to build it.
Building of module requires `kernel-devel` package installed on nodes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Building of module requires `kernel-devel` package installed on nodes.
Building a module requires `kernel-devel` package installed on nodes.

Sorry missed that nit.

When Falco module is not available for particular kernel, Falco tries to build it.
Building of module requires `kernel-devel` package installed on nodes.

For OpenShift installation of `kernel-devel` on nodes is provided through MachineConfig used by
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For OpenShift installation of `kernel-devel` on nodes is provided through MachineConfig used by
For OpenShift, installation of `kernel-devel` on nodes is provided through `MachineConfig` used by

@sumo-drosiek
Copy link
Contributor

Should we backport it to 1.3?

@kkujawa-sumo
Copy link
Contributor Author

kkujawa-sumo commented Jan 20, 2021

I've found an issue on k8s without Openshift. I need to correct condition which is used in initContainer, please do not merge.

@kkujawa-sumo
Copy link
Contributor Author

kkujawa-sumo commented Jan 21, 2021

I've found an issue on k8s without Openshift. I need to correct condition which is used in initContainer, please do not merge.

I modified condition in initContainer:

-      command: ['sh', '-c', "until [ $(ls /host/usr/src/kernels) ]; do echo 'waiting for kernel headers to be installed'; sleep 3; done"]
+      command: ['sh', '-c', 'while [ -f /host/etc/redhat-release ] && [ -z "$(ls /host/usr/src/kernels)" ] ; do echo "waiting for kernel headers to be installed"; sleep 3; done']

@kkujawa-sumo
Copy link
Contributor Author

Should we backport it to 1.3?

Yes, to support 1.3 on OpenShift 4

@kkujawa-sumo kkujawa-sumo force-pushed the kk-enable-falco-openshift46 branch 4 times, most recently from 551090d to 95c2cae Compare January 21, 2021 12:43
@perk-sumo
Copy link
Contributor

Should we backport it to 1.3?

We don't provide OpenShift 4.6 support in the v1.3 releases.

Copy link
Contributor

@perk-sumo perk-sumo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@kkujawa-sumo kkujawa-sumo merged commit 9be5c5e into main Jan 21, 2021
@kkujawa-sumo kkujawa-sumo deleted the kk-enable-falco-openshift46 branch January 21, 2021 14:29
@perk-sumo perk-sumo changed the title Add support for falco on OpenShift 4.6 Add support for Falco on OpenShift 4.6 Mar 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants