Lucissfer's

回首向来萧瑟处,也无风雨也无晴


  • 首页

  • 归档

  • 标签

  • 分类

disconf分布式配置管理平台部署

发表于 2017-01-26 | 分类于 Linux , Disconf

1. 前言

Disconf是由百度开源的一套分布式配置管理平台(Distributed Configuration Management Platform),专注于各种「分布式系统配置管理」的「通用组件」和「通用平台」, 提供统一的「配置管理服务」。
首先,实现了同构系统的配置发布统一化,提供了配置服务server,该服务可以对配置进行持久化管理并对外提供restful接口,在此基础上,基于zookeeper实现对配置更改的实时推送,并且,提供了稳定有效的容灾方案,以及用户体验良好的编程模型和WEB用户管理界面。其次,实现了异构系统的配置包管理,提出基于zookeeper的全局分布式一致性锁来实现主备统一部署、系统异常时的主备自主切换。

2. 配置前准备工作

部署规划

Disconf分为web端与client端,web端统一管理各个环境的配置,在此我们只需要部署web端即可。
Disconf的部署非常简单,它是java语言开发的程序,部署时只需将war包部署到相应位置即可运行,因此只需要在JDK+Tomcat环境中将disconf的war包部署即可。
为保证高可用,我们将disconf分别部署到三台服务器上,并在前端采用nginx实现动静分离+负载均衡。
disconf依赖tomcat环境部署路径:
/usr/local/disconf-tomcat/
disconf部署路径:
/home/disconf/war
disconf打包前配置文件存放路径:
/home/disconf/conf/
disconf日志文件存放路径:
/home/disconf/log/
disconf前端静态文件存放路径:
/home/disconf/war/html/
disconf-web监听端口:8085
disconf前端nginx监听端口:8888

阅读全文 »

FastDFS部署配置

发表于 2017-01-24 | 分类于 Linux , FastDFS

1. 安装FastDFS服务

所需软件包

fastdfs-nginx-module_v1.16.tar.gz
FastDFS_v5.05.tar.gz
libfastcommon
ngx_cache_purge-2.3.tar.gz

安装软件依赖环境

1
# yum install -y libevent gcc* git

安装 libfastcommon

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
从github下载最新的libfastcommon
# git clone https://github.com/happyfish100/libfastcommon.git
# cd libfastcommon
编译
# ./make.sh
安装
# ./make.sh install
指定库文件加载位置
# vim /etc/ld.so.conf.d/libfastcommon.conf
/usr/local/lib
/usr/local/lib64
/usr/lib64
/usr/lib
然后执行ldconfig更新/etc/ld.so.cache文件
# ldconfig
阅读全文 »

MySQL+MHA安装部署

发表于 2017-01-15 | 分类于 Linux , MySQL

1. 准备工作

软件包版本

mysql-5.7.17.tar.gz
cmake-3.6.2.tar.gz
mha4mysql-manager-0.57.tar.gz
mha4mysql-node-0.57.tar.gz

服务器明细

kp-bt-101 Master
kp-bt-102 Candidate Master
kp-bt-103 Slave
kp-bt-13 MHA-manager

2. 安装MySQL服务

解决依赖关系

1
# yum install -y gcc-c++ ncurses-devel openssh-clients
阅读全文 »

Tomcat安装配置

发表于 2017-01-10 | 分类于 Linux , Tomcat

安装JDK

1
# rpm -ivh jdk-8u111-linux-x64.rpm

配置JAVA环境变量

1
2
3
# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH

导出环境变量

1
# source /etc/profile.d/java.sh

查看JAVA版本

1
# java -version

解压tomcat到指定目录

1
2
# tar zxf apache-tomcat-8.0.39.tar.gz -C /usr/local/
# ln -s /usr/local/apache-tomcat-8.0.39/ /usr/local/tomcat

配置tomcat环境变量

1
2
3
# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
阅读全文 »

编译安装配置zabbix 3.0监控平台

发表于 2016-12-20 | 分类于 Linux , Zabbix

1. 前言

zabbix是一个基于WEB页面提供分布式系统监视以及网络监视功能的企业级开源解决方案。基于C/S架构,支持多种采集方式和采集客户端,有专用的Agent,也支持SNMP、IPMI、JMX、Telnet、SSH等多种协议,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上,它将采集到的数据存放到数据库,然后对其进行分析整理,达到条件触发告警。
对于运维工作来说,zabbix是一个不可或缺的企业监控工具,在日常业务环境中可以选择直接通过yum方式安装或者编译源码安装,因为本人喜欢将zabbix安装到自定义位置,故选择编译安装。

2. 部署前准备工作

2.1 部署规划

zabbix目前提供了三个版本的源码包供下载安装,分别是:Zabbix 2.2 LTS、Zabbix 3.0 LTS、Zabbix 3.2。
Zabbix2.2与3.0均为LTS即Long Term Support(长期支持)版本,Zabbix LTS版本可以为客户提供5年的技术支持,包括3年的全服务支持(一般,严重和安全的问题的解决)和后2年的限制性支持(只包括严重和安全问题的解决)。LTS版本发布会改变版本号第一个数字,比如X版本,X+1版本。
而3.2属于标准版本,标准版本会为客户提供6个月的全支持(一般,严重和安全的问题的解决)直到下一个稳定版本发布,还会提供附加一个月的限制性支持(只包括严重和安全问题的解决)。标准版本会改变版本号的第二个数字,比如:X.4、X.6版本。
基于业务稳定性考虑,采用LTS版本更为稳妥,同时3.0 LTS相对于2.2 LTS在WEB界面与中文支持以及其他一些重要功能上做了很大的提升,因此我们选择3.0 LTS版本。
zabbix的web管理界面需要php+MySQL环境支持,在此我们选择LNMP环境。
zabbix的web页面安装路径:/home/zabbix
zabbix服务安装路径:/usr/local/zabbix
MySQL安装路径:/home/mysql

阅读全文 »

keepalived部署

发表于 2016-12-10 | 分类于 Linux , keepalived

1. Director Server配置
安装软件依赖环境

1
2
# yum install -y gcc*
# yum install -y openssl*

安装ipvsadm

1
# yum install -y ipvsadm

下载软件安装包并解压

1
2
# wget http://www.keepalived.org/software/keepalived-1.3.2.tar.gz
# tar zxf keepalived-1.3.2.tar.gz

为程序准备安装目录

1
2
# mkdir /usr/local/keepalived
# mkdir /etc/keepalived
阅读全文 »

openresty编译参数详解

发表于 2016-12-01 | 分类于 Linux , Nginx/OpenResty

表格太长,请直接点击查看全文。

阅读全文 »

Centos环境搭建shadowsocks科学上网

发表于 2016-10-12 | 分类于 Linux

前言:作为一名IT技术狗,在日常工作学习中,难免会经常使用搜索引擎来搜索技术问题,而众所周知的是百度在技术搜索上就是个笑话,想要快速找到答案还是得靠Google,但是因为某些不可描述的原因,在国内想通过正规途径来访问Google完全是不可能的。
那么问题来了,如何通过一些技术小手段来正常访问Google呢?一般来说,常见的方法是通过国外线路的VPN来访问,然而这种情况下有一些使用上的不便。比如说:很多时候在解决问题的时候我们会有这样的需求,一边使用VPN线路通过Google来搜索技术问题同时还需要通过QQ等即时通信软件与同事朋友交流沟通,此时因为我们通过VPN线路来上网,那么就会出现QQ异地登录警告,严重时腾讯会直接将QQ冻结。所以,对于日常工作来说,我认为VPN太重,我们需要一个轻量级的工具仅需能够代理浏览器的请求即可,那么这时shadowsocks就是最好的选择了。

1.安装python-pip

Pip是安装Python包的工具,提供了安装、列举已安装包、升级以及卸载包的功能。Pip 是对easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安装的包也同样可以使用pip进行安装。
目前有很多Python程序都是可以直接通过Pip来一键安装了,比如众所周知的Django、Markdown、Shadowsocks等。

1
# yum install -y python-pip
阅读全文 »

MySQL 5.6单机多实例配置

发表于 2016-09-28 | 分类于 Linux , MySQL

前言:因为所在公司是小公司,经费有限,所以线下测试服务器数量不足。一直以来,开发与测试都是公用一套MySQL环境,然而由于开发与数据对于MySQL数据的需求不完全一致,导致日常工作中经常出现数据干扰,影响工作。因此,为了提高工作效率,决定将开发与测试的MySQL环境分离,然而当前手上只有一台服务器,条件有限,所以只能部署MySQL单机多实例。
MySQL服务器环境:Centos 7.1 + MySQL 5.6.24

  1. 创建数据目录

1
# mkdir -p /data/mysql /data/mysql2
  1. 初始化数据库

1
2
# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql
# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql2 --user=mysql
  1. 生成MySQL多实例配置文件

1
2
# mysqld_multi --example > /data/multi.cnf
# chown mysql.mysql multi.cnf

此处,我们采用的MySQL的官方解决方案mysqld_multi来实现。

阅读全文 »

MySQL 5.7源码编译安装几处变化

发表于 2016-09-27 | 分类于 Linux , MySQL

前言:因为之前blog一直放在朋友的vps上,一来管理不便,二来也麻烦人。于是,花了点小钱在XX主机买了一个香港VPS,然后就准备开始部署blog环境。部署MySQL的时候,想尝尝鲜,就下载了最新的MySQL5.7.15源码编译安装,在编译安装的过程中踩了不少坑。究其主要原因,还是因为MySQL5.7相对于前面的版本做了一些小改动,在编译安装的过程中有一些变化,在此就将我遇到的坑整理出来与大家分享分享。

CMAKE版本
在MySQL的源码编译安装过程中需要使用cmake来安装,而在MySQL5.7的编译安装过程中要求cmake版本最低为2.8,如果版本低于2.8则需要升级cmake版本。

查询版本命令:

1
2
3
# cmake --version
cmake version 3.6.2
CMake suite maintained and supported by Kitware (kitware.com/cmake)

升级cmake有两种方法,可以直接使用yum工具来升级,也可以直接去cmake官网下载源码包然后编译安装。目前常见yum源中的cmake版本都在2.8.X,这里就不细说了,简单说下如何编译安装cmake。

1
2
3
4
5
6
7
# wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz
# tar zxvf cmake-3.6.2.tar.gz
# cd cmake-3.6.2
# ./bootstrap
# make && make install
# cmake --version
cmake version 3.6.2

如果上述编译安装过程中报错,先检查是否安装gcc库。

阅读全文 »
123

Lucissfer

回首向来萧瑟处,也无风雨也无晴

28 日志
22 分类
59 标签
RSS
GitHub E-Mail
© 2013 — 2019 Lucissfer
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4