saltstack install jdk

[摘要] saltstack再来一个测试配置,搭建java环境和配置环境变量:saltstack install jdk,办法比较土,参考网上的pillar,还是没有用好,简单期间直接写的sls配置,通过不容的配置来安装不同版本的jdk,另外遇到了删除jdk.tar.gz文件后重复推送的问题,可以通过unless解决掉。

jdk配置文件:

cat /srv/salt/jdk/jdk8.sls

jdk-dir:
  file.directory:
    - name: '/usr/java'
    - clean: False

jdk-file:
  file.managed:
    - source: salt://file/jdk/jdk1.8.0_20.tar.gz
    - name: /usr/java/jdk1.8.0_20.tar.gz
    - unless: 'test -e /usr/java/jdk1.8.0_20'
    - include_empty: True
    - require:
      - file: jdk-dir

jdk-install:
  cmd.run:
    - name: '/bin/tar -zxf jdk1.8.0_20.tar.gz && /bin/ln -s jdk1.8.0_20 jdk'
    - cwd: /usr/java
    - unless: 'test -e jdk1.8.0_20'
    - require:
      - file: jdk-file


/etc/profile.d/jdk.sh:
  file.append:
    - text:
      - export JAVA_HOME=/usr/java/jdk
      - export PATH=$JAVA_HOME/bin:$PATH

测试执行saltstack,安装jdk8
salt ‘saltest.sudops.com’ state.sls jdk.jdk8

结果如下:

saltest.sudops.com:
----------
          ID: jdk-dir
    Function: file.directory
        Name: /usr/java
      Result: True
     Comment: Directory /usr/java is in the correct state
     Started: 12:06:35.242610
    Duration: 1.01 ms
     Changes:   
----------
          ID: jdk-file
    Function: file.managed
        Name: /usr/java/jdk1.8.0_20.tar.gz
      Result: True
     Comment: unless execution succeeded
     Started: 12:06:35.244201
    Duration: 8.205 ms
     Changes:   
----------
          ID: jdk-install
    Function: cmd.run
        Name: /bin/tar -zxf jdk1.8.0_20.tar.gz && /bin/ln -s jdk1.8.0_20 jdk
      Result: True
     Comment: unless execution succeeded
     Started: 12:06:35.253233
    Duration: 8.128 ms
     Changes:   
----------
          ID: /etc/profile.d/jdk.sh
    Function: file.append
      Result: True
     Comment: File /etc/profile.d/jdk.sh is in correct state
     Started: 12:06:35.268708
    Duration: 3.568 ms
     Changes:   

Summary
------------
Succeeded: 4
Failed:    0
------------
Total states run:     4

如果需要安装其他版本的jdk如:jdk7,可以执行
salt ‘saltest.sudops.com’ state.sls jdk.jdk7

不过软链接需要修改一下
salt ‘saltest.sudops.com’ cmd.run “unlink /usr/java/jdk && ln -sf /usr/java/jdk1.7.0_71 /usr/java/jdk”

u2

Related Posts

rancher v2.x 初体验

rancher v2x

Read more

python cx-Oracle 驱动安装

安装oracle驱动 cx-Oracle驱动二进制版本下载地…

Read more

You Missed

技术深度解析:Model Context Protocol (MCP)

  • u2
  • 5月 16, 2026
  • 18 views

Hermes Agent 自动学习与成长原理深度解读

  • u2
  • 5月 14, 2026
  • 45 views

Agent Memory + Skills 双轮驱动 Memori Labs × Anthropic Dreaming 执行记忆 vs 会话记忆,如何构建持续进化的 Agent

  • u2
  • 5月 11, 2026
  • 71 views
Agent Memory + Skills 双轮驱动 Memori Labs × Anthropic Dreaming 执行记忆 vs 会话记忆,如何构建持续进化的 Agent

基于大模型的测试用例生成解决方案

  • u2
  • 5月 10, 2026
  • 80 views

从0到1搭建一个AI Token中转站:技术架构与实战指南

  • u2
  • 5月 2, 2026
  • 644 views

本地AI时代来临:Ollama + MemPalace工作流深度指南

  • u2
  • 4月 21, 2026
  • 246 views