zoukankan      html  css  js  c++  java
  • stacksalt-centos6升级python2.6到2.7.13(salt第一课)

    安装就不写了

    先把配置文件贴出来

    vim /etc/salt/master

    然后是目录树:

     

    修改配置文件是为了把根目录设置成base

     init目录是初始化服务器要做的所有操作都放在这个目录里面,init/files 目录放着了源码安装所需的所有文件,init-install.sls 是安装服务器所需的基础模块,python.sls是升级python相关的操作,init.sls是init目录的入口文件

    init-install.sls内容:

    # 修改yum源
    yum-source-change:
      file.managed:
        - name: /opt/repo.tar.gz
        - source: salt://init/files/repo.tar.gz
        - mode: 755
        - user: root
        - group: root
      cmd.run:
        - name: tar xf /opt/repo.tar.gz  -C /etc/yum.repos.d/
        - unless: -f /opt/repo.tar.gz
        - require:
          - file: yum-source-change
    
    # 安装基础模块
    init-install:
      pkg.installed:
        - names:
          - gcc
          - gcc-c++
          - zip
          - unzip
          - zlib
          - zlib-devel
          - openssl
          - openssl-devel
          - ntp
          - vim
          - yum-fastestmirror
          - openssh-clients
          - wget
          - rsync
          - cmake
          - lrzsz
          - xz
          - ntpdate
          - lsof
          - telnet
          - epel-release
          - tree
          - kernel-devel
          - kernel
          - ncurses-devel
          - libaio
    
    # 配置基础环境
    localtime-change:
      cmd.run:
        - name: rm -rf /etc/localtime && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
        - unless: -f /usr/share/zoneinfo/Asia/Shanghai
    
    # 添加开机启动
    ntp-add-chkconfig:
      cmd.run:
        - name: chkconfig --add ntpd
        - unless: chkconfig --list | grep ntpd
        - require:
          - pkg: init-install

    python.sls内容:

    # 更新python2.6到python2.7.13版本
    include:
      - init.init-install
    
    python-source-install:
      file.managed:
        - name: /usr/local/src/Python-2.7.13.tgz
        - source: salt://init/files/Python-2.7.13.tgz
        - user: root
        - group: root
        - mode: 755
      cmd.run:
        - name: cd /usr/local/src/ && tar xvf Python-2.7.13.tgz && cd Python-2.7.13 && ./configure  && make && make install
        - unless: -d /usr/local/src/Python-2.7.13
        - require:
          - pkg: init-install
          - file: python-source-install
    
    # 将系统默认的2.6改成2.7
    python-change-version:
      cmd.run:
        - name: mv /usr/bin/python /usr/bin/python_old2 && cp /usr/local/src/Python-2.7.13/python /usr/bin/python
        - unless: -f /usr/bin/python
        - require:
          - cmd: python-source-install
    # 安装 distribute
    distribute-soruce-install:
      file.managed:
        - name: /usr/local/src/distribute-0.7.3.zip
        - source: salt://init/files/distribute-0.7.3.zip
        - user: root
        - group: root
        - mode: 755
      cmd.run:
        - name: cd /usr/local/src/  && unzip -o distribute-0.7.3.zip && cd distribute-0.7.3 && python setup.py install
        - unless: -d /usr/local/src/distribute-0.7.3
        - require:
          - file: distribute-soruce-install
          - cmd: python-change-version
    
    # 安装setuptools
    setuptools-soruce-install:
      file.managed:
        - name: /usr/local/src/setuptools-39.2.0.zip
        - source: salt://init/files/setuptools-39.2.0.zip
        - user: root
        - group: root
        - mode: 755
      cmd.run:
        - name: cd /usr/local/src/  && unzip -o setuptools-39.2.0.zip && cd setuptools-39.2.0 && python setup.py install
        - unless: -d /usr/local/src/setuptools-39.2.0
        - require:
          - file: setuptools-soruce-install
          - cmd: python-change-version
    
    # 安装pip 
    pip-soruce-install:
      file.managed:
        - name: /usr/local/src/pip-18.0.tar.gz
        - source: salt://init/files/pip-18.0.tar.gz
        - user: root
        - group: root
        - mode: 755
      cmd.run:
        - name: cd /usr/local/src/  && tar xf  pip-18.0.tar.gz && cd pip-18.0 &&  python setup.py build && python setup.py install
        - unless: -d /usr/local/src/pip-18.0
        - require:
          - file: pip-soruce-install
          - cmd: setuptools-soruce-install
    
    # 修复yum不能使用
    yum-change-version:
      cmd.run:
        - name: sed -i 's#/usr/bin/python#/usr/bin/python2.6#g' /usr/bin/yum
        - unless: -f /usr/bin/yum
        - require:
          - cmd: python-source-install

    init.sls内容:

    include:
      - init.python
      - init.init-install

    然后把源文件放到指定目录就可以安装了

    在master上执行命令:

         salt  'vps-test-001'   state.highstate  test=True                测试上面的内容是否正确

       salt  'vps-test-001'   state.highstate                                 单个服务器执行安装

       salt  '*'   state.highstate                                                   所有受控服务器执行安装

    在minion上执行命令:

         salt-call  state.sls init

    不同的系统版本有可能会出现基础模块没安装的情况,有报错请在init-install.sls中加入对应的模块名

    第一章结束,下一章写iptables相关配置

  • 相关阅读:
    微软认证考试考试 MCTS, MCITP, MCPD 享受9折优惠
    为程序中按钮添加Shield图标
    WinHEC 2008 China Windows 7 体验之蓝屏无罪
    我们像热爱生命一样热爱技术-洛杉矶Windows硬件工程大会
    WinHEC 之盖茨编年史期待 WinHEC 2008 China
    新年伊始 {阿猫阿狗的幸福生活系列} [一]
    通过数据库备份还原 TFS 到新服务器
    为托管应用程序添加DPI Aware支持
    轻松制作Windows Vista/Windows 7系统WIM镜像
    VSTS报表自定义之Bug重现频率报表
  • 原文地址:https://www.cnblogs.com/xianyin/p/9670699.html
Copyright © 2011-2022 走看看