前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Minikube>=1.8.0版本封装了Falco内核模块

Minikube>=1.8.0版本封装了Falco内核模块

作者头像
CNCF
发布2020-03-13 09:52:23
7120
发布2020-03-13 09:52:23
举报
文章被收录于专栏:CNCF

作者:Lorenzo Fontana

Minikube是一个工具,在macOS、Linux和Windows通过一个简单的命令行实现了一个本地Kubernetes集群。它被社区成员广泛使用来尝试Falco,也被Falco贡献者使用对新的和旧的Kubernetes版本开发和调试Falco。

现在,感谢Anders Bjorklund,PR#6560建议每个用户使用Minikube>=1.8.0版本(通过minikube.iso,例如使用VM驱动程序)来启动任何Kubernetes,也会安装了Falco内核模块,准备好在用户空间中提供Falco实例!

https://github.com/kubernetes/minikube/pull/6560

在撰写本文时,Minikube安装了Kubernetes 1.17.3,Falco仓库还没有发布包含Kubernetes>=1.16版本的更新,尽管有相关的PR#1044和#1005。

https://github.com/falcosecurity/falco/pull/1044

https://github.com/falcosecurity/falco/pull/1005

出于这个原因,要测试这个功能,你可以自己修补,或者使用已经修补的Falco Helm Chart,并在这种情况下工作!

这是非常容易的!安装Minikube 1.8.0之后,你只需要启动一个集群并使用Helm Chart安装Falco。

使用一个VM驱动程序创建一个带有Minikube的集群,在这里是Virtualbox:

代码语言:javascript
复制
minikube start --driver=virtualbox

当你发出命令,看看日志,以确保你至少有Minikube 1.8.0:

代码语言:javascript
复制
?  minikube v1.8.1 on Arch 
    ▪ KUBECONFIG=/home/fntlnz/.kube/current
✨  Automatically selected the virtualbox driver
?  Downloading VM boot image ...
?  Creating virtualbox VM (CPUs=2, Memory=3939MB, Disk=20000MB) ...
?  Preparing Kubernetes v1.17.3 on Docker 19.03.6 ...
?  Launching Kubernetes ... 
?  Enabling addons: default-storageclass, storage-provisioner
⌛  Waiting for cluster to come online ...
?  Done! kubectl is now configured to use "minikube"

现在我们的虚拟机准备好了,我们可以SSH到它,以验证模块在那里!

代码语言:javascript
复制
minikube ssh

之后查看:

代码语言:javascript
复制
lsmod | grep -i falco

Aaaand.....什么也不显示!因为Falco模块还没有加载!

让我们继续安装Falco,稍后它会为我们加载模块。

确认一切正在运行,它将需要显示系统pod:

代码语言:javascript
复制
kubectl get pods --all-namespaces

添加Stable chart仓库到Helm:

代码语言:javascript
复制
helm repo add stable https://kubernetes-charts.storage.googleapis.com/

使用Helm安装Falco:

代码语言:javascript
复制
helm install falco stable/falco

它会给出这样的结果:

代码语言:javascript
复制
NAME: falco
LAST DEPLOYED: Sun Mar  8 16:29:11 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Falco agents are spinning up on each node in your cluster. After a few
seconds, they are going to start monitoring your containers looking for
security issues.

No further action should be required.

阅读日志,以确保Falco正在运行!

代码语言:javascript
复制
kubectl logs -l app=falco -f

它会显示试图找到内核头文件的错误,这些错误是构建模块所需要的,但是我们可以跳过这些错误,因为模块已经在那里了!

代码语言:javascript
复制
* Unloading falco-probe, if present
* Running dkms install for falco
Error! echo
Your kernel headers for kernel 4.19.94 cannot be found at
/lib/modules/4.19.94/build or /lib/modules/4.19.94/source.
* Running dkms build failed, couldn't find /var/lib/dkms/falco/0.20.0+d77080a/build/make.log
* Trying to load a system falco-probe, if present
falco-probe found and loaded with modprobe
Sun Mar  8 15:29:55 2020: Falco initialized with configuration file /etc/falco/falco.yaml
Sun Mar  8 15:29:55 2020: Loading rules from file /etc/falco/falco_rules.yaml:
Sun Mar  8 15:29:56 2020: Loading rules from file /etc/falco/falco_rules.local.yaml:
Sun Mar  8 15:29:56 2020: Starting internal webserver, listening on port 8765

现在Falco正在运行,我们可以去检查模块是否已加载,再次做minikube ssh:

代码语言:javascript
复制
sudo lsmod| grep -i falco

它终于显示Falco模块已加载!

代码语言:javascript
复制
falco_probe           630784  2

你已经完成了!你已经准备好为Falco做贡献,为我们的社区做出贡献!

  • 我们现在在很多事情上需要帮助:
  • Falcoctl:Falco命令行,需要一些来自Go开发人员的爱来改进Falco命令行,自动化维护和使用任务;
  • Driverkit:构建Falco驱动程序的新工具需要Go开发者和内核黑客的帮助,以支持更多的操作系统和架构;
  • client-rs:需要Rust开发者支持我们社区开发的最新的gRPC API,像Version API,查看client-go类似的PR了解我们在这里的意思; https://github.com/falcosecurity/client-go/pull/33
  • Falco:本身就需要C++开发人员和内核黑客来修复bug、使特性更稳定、添加测试和进一步的改进!请加入我们!
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档