运用JupyterNotebook进行系统管理
Jupyter Notebook可以将系统信息作为页面进行展示,将python等信息和shell等执行工具集成到统一的页面(参考《IPython 6/Jupyter的magic操作符》、 IPython的Magics魔法操作符),从而提供一个完整的自定义动态视图。Jupyter Notebook Server还提供Text/HTML/Markdown/JSON/YAML等多种文档编辑器以及可以打开多个并随意布局的Web shell支持,不仅可用于数据分析,也是系统管理、维护的利器。
上图,在Notebook中运行GlusterFS存储系统和Kubernetes的管理工具。
1、安装步骤
包括:
- JupyterLab的本地安装和使用(Ubuntu 18.04)
- 将Jupyter/JupyterHub/JupyterLab运行为系统服务
- Jupyter notebook中的sudo问题详解
2、使用方法
Jupyter Notebook是在服务器上运行的,默认是安装(或服务)的账号。因此,所有的状态是持续的,上次打开的窗口下次在任何地方打开都是上次的状态,如果多个页面同时打开,普通页面可以刷新同步,终端shell是自动更新的。
Python代码
普通的python代码在打开notebook后,输入代码,按shift+enter键即可运行。
控制台脚本
使用!来运行单行shell脚本,可以使用&&连接。如:
!uname -a && ls -l
使用%%sh来运行多行shell脚本。如:
%%shecho "系统信息:"
unname -a
echo "当前目录:"
ls -l
- 注意,不能有要求交互输入的部分,否则会挂起,需要按照下面的方法解决。
sudo命令
如果需要sudo执行,因为需要提示输入密码,需要一些技巧。
- 使用sudo -S参数和管道,如下所示:
echo password | sudo -S cat /etc/fstab
- 使用sshpass(需要单独安装,运行sudo apt install sshpass),如下所示:
sshpass -p password sudo cat /etc/fstab
编写python程序从页面获取输入或者从文件、从网络服务商读取配置参数也都是可行的,只是稍微复杂一些,对于大型系统能够提高效率。额可以将以前的一些工具整合到Jupyter Notebook这个界面来运行。
制作好的Notebook是可以拿来共享的,分享之前注意删除掉一些私有的信息。
以上是 运用JupyterNotebook进行系统管理 的全部内容, 来源链接: utcz.com/z/512565.html