FastHandle - IT Operations Examples

FastHandle is fast operation tools for infrastructure configurations and tests.

User Tools

Site Tools


Sidebar


Top     SiteMap

Manager Server

Target Server

$FHHOME/bin/xxx.sh | xxxx.exp













.

middleware:squid:index.html



This is an old revision of the document!


Top#Middleware Management

Squid (squid.py)

$FHHOME/fabfile/squid.py


Operation

$ fab -l |grep squid

$ fab  -H x.x.x.x auth.pro  squid.yum_install

$ H=test-serve-01,test-server-02

$ fab -H $H auth.pro -- sudo diff /etc/squid/squid.conf /etc/squid/squid.conf.20171205
$ fab -H $H auth.pro -- sudo mv /etc/squid/squid.conf.20171205 /etc/squid/squid.conf

$ fab -H $H auth.pro -- "ps aux |grep suqid"
$ fab -H $H auth.pro -- sudo systemctl status squid
$ fab -H $H auth.pro -- sudo systemctl restart squid


squid.py

$FHHOME/fabfile/squid.py

import sys
from fabric.api import *
from fabric.contrib import files

FHHOME=os.environ["FHHOME"]

#----------------------------------------------------------------------
# Installing Squid
#----------------------------------------------------------------------
# squid.install_yum
@task
def install_yum():
    sudo("rpm -q squid        > /dev/null 2>&1 || yum -y install squid")

#----------------------------------------------------------------------
# Service
#----------------------------------------------------------------------
# squid.systemctl_restart
@task
def systemctl_restart():
    run("ps aux |grep squid")
    sudo("systemctl stauts squid")
    sudo("systemctl restart squid")
    sudo("systemctl stauts squid")
    run("ps aux |grep squid")

#----------------------------------------------------------------------
# Configuration
#----------------------------------------------------------------------
# squid.conf
@task
def put_today_conf():
    today = datetime.now().strftime('%Y%m%d')
    put("%s/conf/squid/squid.conf.test-server-01.%s", "/etc/squid/squid.conf.%s", mode=0640, use_sudo=True % (FHHOME, today, today))
    sudo("chown root:squid /etc/sysctl.conf.%s" % today)
    sudo("/usr/bin/cp -f /etc/squid/squid.conf /etc/squid/squid.conf.`date -d '1day ago' +%Y%m%d`")

@task
def change_today_conf():
    today = datetime.now().strftime('%Y%m%d')
    sudo("/usr/bin/cp -f /etc/squid/squid.conf /etc/squid/squid.conf.`date -d '1day ago' +%Y%m%d`")
    put("%s/conf/squid/squid.conf.test-server-01.%s", "/etc/squid/squid.conf", mode=0640, use_sudo=True % (FHHOME, today))
    sudo("chown root:squid /etc/sysctl.conf")


Configuration



middleware/squid/index.html.1514821397.txt.gz ยท Last modified: 2018/01/02 00:43 by kurihara