sysdig部署和使用
支持发行版
- Debian, from 6.0
- Ubuntu, from 10.04
- CentOS, from 6
- RHEL, from 6
- Fedora, from 13
- Amazon Linux, any version available from the AWS Marketplace
- Linux Mint, from 9
- CoreOS
- Oracle, From 6.0 (UEK kernels R3+, all RHCK kernels)
以下内容为Debian/Ubuntu环境
需要后续补充的内容(解决的问题)
linux-headers匹配的问题,升级内核在生产中不可取,需要另外找到与系统当前内核匹配的包,可考虑更换包的源仓库
需要自己制作一个一键安装的脚本,确保安装过程不会因为网络等各种原因安装失败
apt仓库源
http://mirror.cs.uchicago.edu/debian-security/pool/updates/main/l/linux/
宿主机直接部署
自动化安装
一个步骤自动安装sysdig,为官方推荐方式
注意:在验证所有的依赖后,安装脚本将仅仅会从Draios源的APT/YUM 仓库安装
curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash
手动安装
- 对Draios GPG key添加信任,配置apt库,更新包列表
curl -s https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public | sudo apt-key add -
sudo curl -s -o /etc/apt/sources.list.d/draios.list https://s3.amazonaws.com/download.draios.com/stable/deb/draios.list
sudo apt-get update
- 安装 kernel headers
注意:以下命令可能不对所有内核有效,需要自定义合适的包的名字
sudo apt -y install linux-headers-$(uname -r)
- 安装 sysdig
sudo apt -y install sysdig
编译安装
- 在机器上下载好要编译的源码
- 切换到相应的目录
- 连接互联网(需要下载依赖)并且执行以下命令(提前安装好cmake极其依赖)
mkdir build
cd build
cmake ..
make
make install
Docker容器
- 为保证顺利部署,运行sysdig前,必须要把kernel header安装在宿主的操作系统上
注意:以下命令可能不对所有内核有效,需要合适的自定义包的名字
sudo apt -y install linux-headers-$(uname -r)
- 安装启动docker
apt install docker
systemctl start docker
- sysdig运行
docker pull sysdig/sysdig
docker run -i -t --name sysdig --privileged -v /var/run/docker.sock:/host/var/run/docker.sock -v /dev:/host/dev -v /proc:/host/proc:ro -v /boot:/host/boot:ro -v /lib/modules:/host/lib/modules:ro -v /usr:/host/usr:ro sysdig/sysdig
安装过程中遇到的坑:
安装前需要确保已经安装好当前系统内核相应的linux-header包(版本号完全匹配),执行apt search发现没有当前内核相应版本,普通使用的几个源都没有相应的包,建议直接谷歌搜索相应的完整包名(越完整越好)。
参考资料:
https://github.com/draios/sysdig/wiki/How-to-Install-Sysdig-for-Linux
https://github.com/draios/sysdig/wiki/How-to-Install-Sysdig-from-the-Source-Code