在我们的网络中,出于安全考虑,所有虚拟机和服务器都将 /tmp 挂载为 noexec 目录。尝试安装 Jira 时,从该文件夹运行 Java 会失败。我该如何解决这个问题?
刚刚使用这个 repo 在 fedora server 35 上安装了 influxdb:
https://repos.influxdata.com/rhel/8/x86_64/stable/
每次我重新启动服务influxdb
(默认配置)时,它都会连接到 aws cloudfront 上的随机 IP:
tcp ESTAB 0 0 192.168.6.233:44522 143.204.224.81:443 users:(("influxd",pid=45731,fd=16)) timer:(keepalive,20sec,0) uid:988 ino:149215 sk:31 cgroup:/system.slice/influxdb.service <->
tcp ESTAB 0 0 192.168.6.233:47106 18.64.79.51:443 users:(("influxd",pid=45632,fd=16)) timer:(keepalive,12sec,0) uid:988 ino:148945 sk:29 cgroup:/system.slice/influxdb.service <->
我对 influxdb 很陌生,还没有阅读手册。
有人可以向我解释这种行为吗?
谢谢
问候。
尝试在本地 DEV 服务器上安装 CentOS 7。
服务器规格:
CPU: Ryzen 7 5800x
Motherboard: ASRock B550M STEEL LEGEND AM4
RAM: Corsair 32GB RAM
Hard Drive: 2x 500GB Corsair NVME
LAN: Intel Gigabit CT PCI-E Network Adapter EXPI9301CTBLK
我在安装过程中遇到错误:
我正在重新下载 Cent OS 7 Everything ISO,但不知道从哪里开始解决这个问题。
硬件绝对是非标准/主流,所以我认为故障出在硬件驱动程序上。
任何想法这个错误意味着什么?
更新:
我尝试了多个应用程序来刻录 ISO:
- 鲁弗斯
- Win32DiskImager
我尝试了多个 ISO(来自http://centos.mirror.rafal.ca/7.9.2009/isos/x86_64/):
- CentOS-7-x86_64-DVD-2009.iso
- CentOS-7-x86_64-Everything-2009.iso
结果相同。
更新 2:
我还尝试添加:
noacpi
nolapic
noapic
结果相同。
如何自动化服务器安装?哪些基础设施/系统适合我们的需求?
我们有 10 多台物理服务器和 100 多台虚拟机,主要是 LAMP。不是太多,但也不是任何可以自己继续工作的东西。所有服务器都有 KVM 虚拟化。我们为经常修改的客户托管各种定制应用程序。因此,这不是一个需要扩展的应用程序。项目团队直接与客户和虚拟机合作,这是一项要求。
我们经常遇到的问题是重新安装虚拟机/机器会变得很棘手,因为没有人控制它们最近的更改,这会带来不稳定的风险,人们会尽可能地推迟它,并且随着时间的推移问题会变得更大。
我想至少每 3 个月根据需要建立一个重新安装程序。重新安装应从代码存储库和备份开始。这不应该是虚拟机重复。
我们估计,如果手动完成,在当前设置中每 3 个月将花费我们大约 6 个人工月。我们如何才能减少这个时间并增加过程的可重复性?
问题是什么软件可以帮助我们自动完成这项任务。它应该尽可能轻。我们不需要自动节点分配。我们只需要重新安装以尽可能自动化。我们假设每次重新安装都有人工监督。
我们的节点主要是 LAMP,有两个系统具有超过 1TB 的结构化数据库数据、几个 >200GB 和大约 50 个小型自定义 VM。我们可以轻松地安排每个系统的计划停机时间,因此这不是重新安装期间的高可用性问题。
我们只需要尽可能地自动重新安装。
我有一个产品,我可以先安装它,然后更新它——这意味着为我的基础产品添加更多功能
我是第一次执行 MSI,然后进入添加\删除程序,选择产品时,您可以单击“更改”,安装向导将再次出现,允许您选择并安装产品中的附加功能
我为此任务创建了 2 个 ansible 角色和剧本第一个角色使用 ansible.windows.win_package 安装基础产品(参见下面的示例)
- name: Install Server.msi primary_appserver
ansible.windows.win_package:
path: C:\product.msi
log_path: C:\InstallProduct.log
arguments:
ADDLOCAL=DB,Agent
state: present
become: true
become_method: runas
vars:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
when: "'primary_appservers' in group_names"
第二个角色再次使用 ansible.windows.win_package 和不同的 ADDLOCAL 参数(附加功能):
- name: Install Engine primary_appserver
ansible.windows.win_package:
path: C:\product.msi
log_path: C:\InstallEngine.log
arguments:
ADDLOCAL=Engine
state: present
become: true
become_method: runas
vars:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
when: "'primary_appservers' in group_names"
第一个角色工作正常并执行 msi 文件,第二个角色 - 不是
我需要在我的 Linux 系统上找到 OpenSSL 库(libeay32.dll 和 ssleay32.dll)的路径,并怀疑它们可能位于 OpenSSL.exe 所在的位置。
如果我输入
openssl version
我收到类似“OpenSSL 1.1.1d 2019 年 9 月 10 日”的回复。太好了,所以安装了 OpenSSL。
如果我输入
whereis openssl
我得到“openssl:/usr/bin/openssl /usr/share/man/man1/openssl.1ssl.gz”,并怀疑这是 oppenssl 安装目录。
不幸的是,该目录不存在,因此 /usr/local/ssl 也不存在,据 Internet 消息称,这是另一个流行的 OpenSSL 安装目录。尽管如此,OpenSSL 仍然有效。
甚至从根目录对文件系统进行完整的递归搜索也没有发现对任何这些 OpenSSL 文件的命中。
我如何找到它们?为什么 whereis 会失败?
我遇到的问题是,在安装新系统时,无论是 VMWare 中的虚拟机,还是客户服务器的新 VDS,我都必须不断安装相同的软件包(Nginx、firewalld、htop、python ),进行相同的配置并安装相同的应用程序。这一切都在命令行中。有什么方法可以让这个过程舒服吗?我在考虑各种 Web 管理应用程序(例如FastPanel、CWP等),但没有找到任何具体的标准。当您有很多服务器可供您使用并且需要进行相同的设置时,您如何应对这一切?
我不考虑当您拥有一组相同的虚拟机并且您可以简单地安装现成的系统映像的情况,因为除其他外,我必须与其他公司的第三方系统合作,而我无法安装特定图像,必须手动安装所有软件
PS 作为参考,我主要使用 Ubuntu、CentOS 和 Redhat。
我安装了CentOS 8.4 4.18.0-305.3.1。
一切都很好,直到我跑yum -y update
了却不明白这意味着什么。
之后 CentOS 升级到8.5 4.18.0-348.2.1版本,这不适合我的目的。
我尝试天真地尝试将操作系统版本恢复到 8.4 4.18.0-305.3.1:
yum history undo.
switching to kernel version 4.18.0-305.3.1.
yum downgrade redhat-release
但没有任何帮助。
是否可以使用我需要的操作系统版本安装到现有机器 ISO,从该 ISO 启动并在现有操作系统 8.5 上安装 CentOS 8.4 4.18.0-305.3.1?
您需要在没有网络的环境中安装它。
所以我是通过 RPM 安装的。
与此同时,发生了崩溃,安装无法继续。
我yum install --downloadonly
在搜索各种东西时发现。
据说rpm
从网络可能的地方下载后,可以安装在网络不可能的地方。
如果是这样,我有一个问题要问你。
- 下载位置的操作系统版本是否应该相同?
- 安装在下载和安装位置的rpm不同有关系吗?
- 这个特性的依赖解析是如何工作的?(不知道的可以不回答)
我需要您的帮助,因为我是rpm
安装新手。
先感谢您。
一些背景:
当我开始在我目前的工作地点(在服务器基础设施中)时,已经有一个 bash、perl 和 python 代码库用于在 linux 系统上远程执行作业,编写和维护这个代码库的人花了数年时间改进它,在我开始之前。
尽管现有的代码库可以做很多事情,但有时由于缺乏文档而很难使用。一些正在执行的脚本也已经过时了。我们非常依赖代码库的作者。(可以添加,只允许作者编辑涉及的脚本)
最近我一直在试验 Ansible 和配置 linux 环境、用户、组、防火墙、安装包和运行检查。我建议开始将基本任务转换为 Ansible,并随着时间的推移将其与 Tower 或 AWX 结合起来,以更好地了解工作及其成功。
今天,其他人对这个想法并不太热衷,尤其是代码库的作者。作者不迁移到 Ansible 的论点是它“太抽象”。
问题是:
我应该尝试推动迁移到 Ansible 吗?
优点,我的看法:
- 许多功能已经通过模块存在。
- 新同事应该更容易上手。
- 可以与前端一起使用,例如 Tower 或 AWX。
- (可能)总体上更安全,因为自定义脚本要求您编写自己的检查。
- 我想 Tower/AWX 可以用于我们组织的其他团队
缺点,我的看法:
- 学习曲线
- 将需要相当多的工作来实施。
- “另一个系统”来维护。
任何人都已经开始使用 Ansible,并且基础设施已经到位,这样做的利弊?
我可以补充一点,我不是工作场所的“最强声音”,代码库作者是我们所有人中“最资深的”。所以涉及到等级制度,我的建议必须有很好的动机才能被听到。
对此感到高兴。
PS。根据您的经验,Ansible 可以是任何自动化工具。我只是碰巧了解了 Ansible。