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

#####################################################
## 如有转载,请务必保留本文链接及版权信息
## 欢迎广大运维同仁一起交流linux/unix网站运维技术!
##QQ:335623998
## 博客: http://dreamway.blog.51cto.com/
##weibo http://weibo.com/zhaixiangpan
#####################################################
一、知识管理系统
知识管理系统(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第三方软件仓库
[root@syswiki ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
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 ~]#  rm -f /usr/bin/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

你可能感兴趣的:(MoinMoin,搭建运维知识库,MoinMoin搭建知识库)