使用MoinMoin搭建运维知识库[上文]

简介:
## 如有转载,请务必保留本文链接及版权信息
## linux/unix网站运维技术!
##QQ:335623998
##E-mail:335623998@qq.com
#####################################################
一、知识管理系统
知识管理系统(Knowledge Management System,KMS),它是收集、处理、分享一个组织的全部知识的信息系统,通常有计算机系统支持。知识管理系统使组织能更好地捕捉和应用知识。这些系统收集所有公司内部相关的知识和经验,并使它在任何地方、任何时间需要时能方便使用,以改善企业过程和管理决策。他们同时也能连接外部知识源。同时KMS也支持知识的获取、存储、分发和应用过程,也支持创新知识和把知识集成到组织的过程,具体包括组织范围的管理和分发文件、图形及其他数字载体的系统。
面对复杂繁重的系统运维工作,为提高运维效率 ,技能知识、经验显得尤为重要。通过Wiki知识管理平台收集、整合、管理运维知识资源,使原本分散、独立的运维知识形成数据库,更有效的实现知识积累、共享、交流,使部门工作人员充分利用团队的知识力量高效完成运维工作,并对新员工起到培训作用。
运维知识库作用:
1 、实现知识共享
2 、实现知识转化
3 、避免知识流失
4 、规范、统一运维工作
5 、记录工作日志
6 、提高运维响应速度和质量
7 、提升运维服务管理能力
8 、分析运维工作
在这飞速变革的知识经济时代里,个人发展越来越依赖于个人竞争力。而个人竞争力的源泉则是个人知识力:个人知识的学习、保存、传递、使用和创新的能力。每个人都离不开个人知识力的培养和塑造。对于各类机构而言,提升知识员工的个人知识力也是组织效率提升、竞争力升级的基础工作。摘自《你的知识需要管理》
二、MoinMoin
MoinMoin是一个基于Python环境的wiki引擎程序,支持包括中文在内的多语种特性。现在最新稳定版本为1.9.6,MoinMoin可运行在Windows、Linux/BSD/UNIX、OS X等环境下。目前能够处理英文、德文、繁简体中文、日文、俄文等约20种语言。
MoinMoin的特点:
完全使用文件来存储内容,不使用数据库
实现了全部Wiki规范,Unicode编码支持多语种
完整实用的wiki文本约定,编辑规则比较轻巧易学
支持多种扩展方式: 宏,插件,预处理……
为数众多的插件中包括Tex科技文本输入、FreeMind思维图谱、GraphViz示意图、gnuplot数据图表绘图等
支持几种很实用的不同页面样式
真正跨平台
针对个人,也需要进行知识管理及工作日志记录、研究总结。我以前使用OneNote,现在使用为知笔记进行个人知识收集、管理、分类。
 
 三、搭建运维知识库
本文是由于wiki知识库所在的服务器不稳定,需要将其服务迁移至新机器,而原系统是rhel4.7_32bit, 系统和MoinMoin都是比较老的版本,现在的主流操作系统都是RHEL5.5 64bit,直接迁移程序及数据不兼容,考虑在RHEL5.5系统上部署MoinMoin较新的稳定版本moin-1.9.3,再将wiki备份数据目录与新版本数据目录进行合并,启动apache服务即可。
迁移 MoinMoin 记录
3.1系统环境
[root@syswiki ~]# lsb_release -a
LSB Version:    :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description:    Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release:        5.5
Codename:       Tikanga 
3.2 安装需求 
3.2.1 安装epel第三方软件仓库
3.2.2 安装apache2与wsgi组件
[root@syswiki tools]# yum install  -y httpd mod_wsgi
 
httpd.x86_64                                 2.2.3-43.el5
mod_wsgi.x86_64 0:3.2-2.el5  
3.2.3 升级python(可选)
[root@syswiki ~]#  yum install python26 -y
对python做一些处理,使之生效并正常使用
[root@syswiki ~]# ln -s /usr/bin/python26 /usr/bin/python
[root@syswiki ~]# python -V                             
Python 2.6.8
yum  是基于 python2.4 的,升级后会影响使用。
解决办法也很简单:
[root@syswiki ~]#  vim /usr/bin/yum
#!/usr/bin/python2.4 # 修改为此配置即可
3.3 安装MoinMoin
3.3.1 下载MoinMoin
[root@syswiki tools]# wget http://static.moinmo.in/files/moin-1.9.3.tar.gz
[root@syswiki tools]# ls
moin-1.9.3.tar.gz
3.3.2 解压
[root@syswiki tools]# tar zxf moin-1.9.3.tar.gz
[root@syswiki tools]# ls
moin-1.9.3  moin-1.9.3.tar.gz
3.3.3安装
[root@syswiki tools]# cd moin-1.9.3
[root@syswiki moin-1.9.3]# python setup.py install --force --prefix /opt/syswiki  --record=install.log
 
Configuration files copy
 
安装后的目录/opt/syswiki/share/moin/
[root@syswiki moin-1.9.3]# cd /opt/syswiki/share/moin/
3.4 配置MoinMoin
3.4.1 建立于MoinMoin相关的配置文件
[root@syswiki moin]# cp server/moin.wsgi .
[root@syswiki moin]# cp config/wikiconfig.py  .
3.4.2 配置 Web server
3.4.2.1 配置apache主配置文件
[root@syswiki moin]# vim /etc/httpd/conf/httpd.conf
# 检查打开Include指令
………略…………#
Load config files from the config directory "/etc/httpd/conf.d".
#
Include conf.d/*.conf
…………略…………
# 添加wsgi_module模块配置
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule wsgi_module modules/mod_wsgi.so
…………略…………
3.4.2.2 配置syswiki虚机主机
[root@syswiki moin]# vim /etc/httpd/conf.d/syswiki.conf
 
NameVirtualHost 192.168.4.176:80
<Virtualhost 192.168.4.176:80>
ServerName syswiki.hexun
ServerAlias syswiki
</Virtualhost>
# MoinMoin WSGI configuration
#
# you will invoke your moin wiki at the root url, like http://servername/FrontPage:
#WSGIScriptAlias /   /usr/local/share/moin/moin.wsgi
WSGIScriptAlias /syswiki /opt/syswiki/share/moin/moin.wsgi
 
# create some wsgi daemons - use user/group same as your data_dir:
WSGIDaemonProcess moin user=apache group=apache processes=5 threads=10 maximum-requests=1000 umask=0007
 
# use the daemons we defined above to process requests!
WSGIProcessGroup moin
 
# WSGISocketPrefix
WSGISocketPrefix /var/run/moin-wsgi
3.4.3配置moin.wsgi
检查mod_wsgi是否安装
[root@syswiki moin]# rpm -qa mod_wsgi 
mod_wsgi-3.2-2.el5                                installed
配置moin.wsgi
[root@syswiki moin]# vim /opt/syswiki/share/moin/moin.wsgi
# a1) Path of the directory where the MoinMoin code package is located.
#     Needed if you installed with --prefix=PREFIX or you didn't use setup.py.
#sys.path.insert(0, 'PREFIX/lib/python2.3/site-packages')
/opt/syswiki/lib/python2.6/site-packages/ # MoinMoin 安装位置根据安装目录而定义
 
# a2) Path of the directory where wikiconfig.py / farmconfig.py is located.
#     See wiki/config/... for some sample config files.
#sys.path.insert(0, '/path/to/wikiconfigdir')
#sys.path.insert(0, '/path/to/farmconfigdir')
sys.path.insert(0, '/opt/syswiki/share/moin') # MoinMoin 主配置文件wikiconfig.py所在目录
 
3.4.4 安全设置 
[root@syswiki moin]# cd /opt/syswiki/share/
[root@syswiki share]# chown -R apache:apache moin
[root@syswiki share]# chmod -R ug+rwX moin
[root@syswiki share]# chmod -R o-rwx moin 
3.4.5 Wiki基本配置
[root@syswiki share]# vim /opt/syswiki/share/moin/wikiconfig.py
 
 
   # b) if wiki content is maintained in many languages
    #page_front_page = u"FrontPage"
    page_front_page = u"StartPage" # wiki 默认首页
 
 
# Security ----------------------------------------------------------
 
    # This is checked by some rather critical and potentially harmful actions,
    # like despam or PackageInstaller action:
    #superuser = [u"YourName", ]
    superuser = [u"WikiAdmin", ]   # 设定超级用户
 
 
重启httpd服务,使配置生效 
[root@syswiki share]# service httpd restart
3.4.6 访问wiki页面是否正常,若访问正常,继续下面配置,如果有问题请检查httpd配置及MoinMoin安装目录与web配置是否一致。
3.5 恢复原wiki数据
3.5.1 为保持数据一致性,先关闭httpd服务
[root@syswiki moin]# service httpd stop
3.5.2 将之前备份最近的wiki数据cp至新的wiki数据目录,data目录包含了所有的用户数据与wiki内容
[root@syswiki data]# pwd  
/opt/home/moinmoin/data
[root@syswiki data]# \cp -a * /opt/syswiki/share/moin/data/
3.5.3 再启动httpd服务
[root@syswiki data]# service httpd start
检查wiki服务、数据、用户与原来是否一致、完整,升级迁移后的MoinMoin版本为moin-1.9.3,数据内容完整,但有一个问题是新老版本wiki语法格式有些差异,少部分内容显示有些差异,但不影响使用及数据内容。

4、运维知识库效果图

至此已经完成MoinMoin Wiki知识库从老版本迁移升级至新版本,为完善Wiki功能还需一些配置,详见下文《使用MoinMoin搭建运维知识库[下文]-完善配置篇》。http://dreamway.blog.51cto.com/1281816/1148252

    关于MoinMoin更多内容详见http://moinmo.in



本文转自pandazhai 51CTO博客,原文链接:http://blog.51cto.com/dreamway/1147487

相关文章
|
8月前
|
机器学习/深度学习 存储 运维
深度学习如何让“运维知识库”从“聪明”到“智慧”
深度学习如何让“运维知识库”从“聪明”到“智慧”
312 18
|
9月前
|
SQL 存储 关系型数据库
【YashanDB知识库】共享从 MySQL异常处理CONTINUE HANDLER的改写方法
【YashanDB知识库】共享从 MySQL异常处理CONTINUE HANDLER的改写方法
|
8月前
|
SQL 测试技术 数据库
【YashanDB知识库】IMP跨网络导入慢问题
问题现象:290M数据,本地导入2分钟,跨机导入耗时显著增加(最高30分钟)。 原因分析:`imp`逐条SQL通过网络传输至yashanDB执行,交互频繁导致性能下降。 影响版本:客户测试环境22.2.8.3。 解决方法:将导入文件上传至与yashanDB同机后使用`imp`,减少网络延迟。 经验总结:优化`imp`工具,支持直接上传文件至服务器端执行,降低网络依赖。
|
8月前
|
监控 数据库
【YashanDB 知识库】ycm 托管数据库时报错 OM host ip:127.0.0.1 is not support join to YCM
在托管数据库时,若 OM 的 IP 被设置为 127.0.0.1,将导致无法托管至 YCM,并使数据库失去监控。此问题源于安装时修改了 OM 的监听 IP。解决方法包括:将 OM 的 IP 修改为本机实际 IP 或 0.0.0.0,同时更新 env 文件及 yasom 后台数据库中的相关配置。经验总结指出,应避免非必要的后台 IP 修改,且数据库安装需遵循规范,不使用仅限本机访问的 IP(如 127.0.0.1)。
|
8月前
|
监控 网络安全 数据库
YashanDB 知识库:ycm 纳管主机安装 YCM-AGENT 时报错 “任务提交失败,无法连接主机”
在安装 ycm-agent 纳管主机时,可能出现因端口未开放导致的报错问题。此问题会阻止 YCM 对主机和数据库的监控功能,影响版本为 `yashandb-cloud-manager-23.2.1.100-linux-aarch64.tar`。原因是目标主机(如 10.149.223.121)未开放 9070 或 9071 端口。解决方法包括关闭防火墙、添加白名单或开放指定端口,需与管理员确认操作。处理过程涉及网络检查、端口测试等步骤。端口问题解决后,若再次安装报唯一键错误,需先移除失败主机再重试。
|
8月前
|
监控 Java Shell
【YashanDB 知识库】ycm 托管数据库时,数据库非 OM 安装无法托管
本文主要介绍了因数据库未按规范使用 yasboot 安装导致的问题及解决方法。问题表现为无 yasom 和 yasagent 进程,且目录结构缺失,致使 ycm 无法托管与监控。分析发现可能是数据库版本旧或安装不规范引起。解决方法为先生成配置文件,安装 yasom 和 yasagent,再生成并修改托管配置模板,最终通过命令完成托管至 yasom 和 ycm。总结强调了按规范安装数据库的重要性以避免类似问题。
|
9月前
|
SQL 关系型数据库 MySQL
【YashanDB知识库】MySQL field 函数的改写方法
【YashanDB知识库】MySQL field 函数的改写方法
|
9月前
|
数据库
【YashanDB知识库】服务器重启后启动yasom和yasagent进程时有告警
【YashanDB知识库】服务器重启后启动yasom和yasagent进程时有告警
|
9月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法

热门文章

最新文章