Linx下Keepalived做成服务
在/usr目录下面执行:
find -name keepalived
返回如下:
./sbin/keepalived
./local/sbin/keepalived
./local/etc/keepalived
./local/etc/rc.d/init.d/keepalived
./local/etc/sysconfig/keepalived
这些都是作为服务需要处理的:
作如下拷贝:
cp /usr/local/sbin/keepalived /usr/sbin 拷贝可执行文件,没有这一步将会在执行service keepalived start的时候报错:keepalived: command not found
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/ 需要在/etc目录下创建keepalived目录
cp /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/ 创建入口脚本文件,可以接收start| stop | status | restart
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/ 拷贝系统配置文件(上面提到的日志就是在这里配置的
其实这里有一个很直观的处理:就是把用户路径(/usr/local/)之后的路径单独拎出来拷贝到对应的系统路径(/usr/bin, /etc/)即可。
经过了如上的处理就可以通过以下方式来操作keepalived
service keepalived start | stop | restart | status
下面就是服务的开机启动,说道服务器的开机启动就要谈及运行级别以及系统服务,在linux中开机是被划分为七个级别,其实每个级别都是基于上个级别增加加载内容:
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
比如级别3就是只是命令行模式,到了级别5已经开始加载图形化界面的内容;有的运维会建议将级别调整到3,然后通过在命令敲入startx进入到图形化界面(linux系统的7种运行级别);正常情况下有桌面的Linux已经是5级别了。
所谓系统服务就是在系统启动的时候需要进行启动的服务,区别于需要手动启动的服务(应用)。
所以对于安全性要求不是特别高的情况下,对于启动脚本设定在5这个级别其实就可以了,如果为了保险起见,可以设置为1~5,保证能够启动的到(0和6级别不要设置);
开机启动的原理是:
1. 每个应用(服务)的启动脚本(可以相应start/stop等操作的脚本)都是放置到/etc/init.d下面的;
2. 每个启动级别,操作都会调用各自的级别启动脚本,放置在/etc/rc.d下面(ll之后将会看到,其中rc.local将会是最后一个被执行的);
3. 进到rcx.d文件夹中将会看到一些脚本符号(软链接到/etc/init.d下面的具体某个启动脚本);
可以想象到,每个级别都会逐个执行rcX.d下面的脚本,可以推断,如果你指定了多个级别,那么应用(服务)启动脚本将会被执行多次,所以应用的启动脚本一定需要具有等幂性;
执行指令
chkconfig --add keepalived
chkconfig --level 345 keepalived on
第一句是添加系统服务,第二句是设定系统服务在那些级别进行启动;
还可以通过以下指令来查看系统服务情况:
chkconfig --list 查看全部服务以及启动级别;
chkconfig --level 2 keepalived off 关闭掉服务某(些)个启动级别 chkconfig --del keepalived 删除系统服务(另外一个场景就是iptables,可以直接删除,避免开机的时候启动)
使用过程发生的问题
error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
默认libssl.so.1.1(openssl组件)会安装在/usr/local/lib64下面;需要通过软连接放置到/usr/lib64下面:
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
ln是软链接,软链接代表寓意和windows的快捷方式很类似,软链接并不和数据块相连,只是一个符号,和真实的数据库的一个名称相连;与之相对应的是硬链接,直接和数据块(node)相连,相当于一个数据块的别名。
Linx下Keepalived做成服务的更多相关文章
- linux下脚本做成服务
一.脚本做成服务 1.把启动脚本复制到 /etc/init.d目录中 2.脚本内容 xxxx代表jar包名称 #!/usr/bin/env bash # chkconfig: 2345 20 80 # ...
- CentOS 6.5 下keepalived服务的配置
CentOS 6.5 下keepalived服务的配置 参考网站: http://zhangxugg-163-com.iteye.com/blog/1665419 http://www.2cto.co ...
- windows下 将tomcat做成服务,并于oracle后启动
一.将tomcat做成服务 1.下载解压版的tomcat 6.*, 设置java.tomcat的环境(这个就不说了). 2.运行->cmd->到tomcat安装目录的bin目录: 3.运行 ...
- mac下打开FTP服务
MAC下打开FTP服务 周银辉 mac下一般用smb服务来进行远程文件访问,但要用FTP的话,高版本的mac os默认关掉了,可以用如下命令打开: sudo -s launchctl load -w ...
- linux下的crontab服务
linux下的crontab服务:1.crontab 是用来让使用者在固定时间或固定间隔执行程序之用在linux平台上如果需要实现任务调度功能可以编写cron脚本来实现.以某一频率执行任务linux缺 ...
- 基于SpringMVC下的Rest服务框架搭建【1、集成Swagger】
基于SpringMVC下的Rest服务框架搭建[1.集成Swagger] 1.需求背景 SpringMVC本身就可以开发出基于rest风格的服务,通过简单的配置,即可快速开发出一个可供客户端调用的re ...
- Sco Openserver下 配置SSH服务(图解)
Sco Openserver下 配置SSH服务 好久没玩儿Sco Unix系统了,春节过后为邮政系统的一个朋友调试系统( 装了个远程服务) ,这两天将安装过程回忆了一下,总结出来给大家分享. 本试验需 ...
- [转]Ubuntu下配置NFS服务
[转]Ubuntu下配置NFS服务 http://blog.163.com/liu8821031%40126/blog/static/111782570200921021253516/ Table ...
- Ubuntu下开启ssh服务
网上有很多介绍在Ubuntu下开启SSH服务的文章,但大多数介绍的方法测试后都不太理想,均不能实现远程登录到Ubuntu上,最后分析原因是都没有真正开启ssh-server服务.最终成功的方法如下: ...
随机推荐
- bat 感想
用bat做了个跨版本更新包的生成脚本,由于之前都是写一些很简单bat,或者python里使用windows命令,所以纯用bat做这个东西,还是有点复杂的. 过程中遇到很多问题,主要是参数太多,变量的使 ...
- 008-zabbix监控nginx
(1)agent端配置 1)nginx编译安装需要加上该选项--with-http_stub_status_module 2)修改nginx配置文件 #vim /usr/local/nginx/con ...
- 了解ffmpeg生态
我以前整理的ffmpeg相关资料: 了解ffmpeg要读的资料 https://blog.csdn.net/yyhustim/article/details/9078941 ffmpeg和ffserv ...
- php字符串大小写转换
strtoupper().strtolower().ucfirst().ucfirst().ucwords().mb_strtoupper().mb_strtolower()和mb_convert_c ...
- linux线程的实现(转)
原文:https://www.cnblogs.com/zhaoyl/p/3620204.html 首先从OS设计原理上阐明三种线程:内核线程.轻量级进程.用户线程 内核线程 内核线程就是内核的分身,一 ...
- C的随机数用法
rand() #include <stdio.h> #include <stdlib.h> int main() { ; i < ; i++) { printf(&quo ...
- jmeter使用jdbc获取注册验证码进行注册
自动化工具测试注册功能时,往往会遇到验证码,这个烦人的验证码怎么能够解决掉呢? 通常有两种方法 让开发禁用注册码,或在测试环境写个固定的验证码 在jmeter中用 jdbc获取数据库中验证码 今天通过 ...
- CMDB架构需求实现
CMDB资产管理部分实现 需求 1.存储所有IT资产信息 2.数据可手动添加 3.硬件信息可自动收集 4.硬件信息可自动变更 5.可对其他系统灵活开放API 6.API接口安全认证 立业之本:定义表结 ...
- IDEA 2018.1可用License服务(持续更新)
1. http://idea.congm.in 2.http://idea.toocruel.net
- css-select的三角在不同浏览器的样式是不一样的,所以我们这样解决???
select{ width:57px; height:23px; border:1px solid #e9e9e9; outline: none; appearance: none; -moz-app ...