openstack 源码分析之swift proxy 服务启动 1

本文详细介绍了在Ubuntu 12.04环境下,如何启动Swift 1.4.8的proxy服务。首先,Swift的服务启动脚本通常位于/usr/local/bin,通过swift-init启动。接着,它使用optparse解析命令行参数,并调用swift.common.manager模块来执行相应的命令。在swift.common.manager.py中,通过类方法获取所有合法的command对象。最后,通过swift-init的proxy start命令,启动swift-proxy-server进程。
摘要由CSDN通过智能技术生成

环境 ubuntu 12.04

swift 1.4.8

安装swift后,使用 swift-init 脚本启动 swift 服务,openstack启动和各种服务脚本下 一般默认安装在/usr/local/bin 目录下 

#!/usr/bin/python
# EASY-INSTALL-SCRIPT: 'swift==1.4.8','swift-init'
__requires__ = 'swift==1.4.8'
import pkg_resources
pkg_resources.run_script('swift==1.4.8', 'swift-init')

启动 安装目录下同名的 swift-init 脚本 (其它脚本同理)一般在.../python2.7/dist-package/swift-XXX/EGG-INFO/scripts/ 目录下 如下:


import sys
from optparse import OptionParser

from swift.common.manager import Server, Manager, UnknownCommandError

USAGE = """%prog <server> [<server> ...] <command> [options]

Commands:
""" + '\n'.join(["%16s: %s" % x for x in Manager.list_commands()])


def main():
    parser = OptionParser(USAGE)
    parser.add_option('-v', '--verbose', action="store_true",    #添加命令行参数
                      default=False, help="display verbose output")
    parser.add_option('-w', '--no-wait', action="store_false", dest="wait",
                      default=True, help="won't wait for server to start "
                      "before returning")
    parser.add_option('-o', '--once', action="store_true",
                      default=False, help="only run one pass of daemon")
    # this is a negative option, default is options.daemon = True
    parser.add_option('-n', '--no-daemon', action="store_false", dest="daemon",
                      default=True, help="start server interactively")
    parser.add_option('-g', '--graceful', action="store_true",
                      default=False, help="send SIGHUP to supporting servers")
    parser.add_option('-c', '--config-nu
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值