CEPH-DEPLOY INSTALL时,远端节点在执行APT-GET UPDATE命令时失败

环境

  OS:Ubuntu 16.04

背景

  使用ceph-deploy部署Ceph集群,调用ceph-deploy install命令在远端节点安装ceph环境,执行apt-get update命令时失败。

Err:1 http://mirrors.163.com/ubuntu xenial InRelease
  Temporary failure resolving ‘mirrors.163.com‘

分析

  ceph-deploy的原理,就是ssh免密码登录到远端节点,然后执行各种命令。和刚才的apt-get命令结合起来,实际执行的是类似“ssh remote_node apt-get update”的命令。于是再回到执行ceph-deploy的admin节点,执行ssh remote_node apt-get update,果然失败。
  直接连接到出问题的节点,执行apt-get update命令,没有任何问题。这样看来,应该是一些环境变量的问题了。我的环境中是有网络代理的,连接外网必须配置http_proxy和https_proxy这两个环境变量。我将这两个环境变量设置在/etc/profile配置文件中,然而,ssh使用bash是作为一个non-login shell的,因此不会加载这个文件。我们可以执行下面的命令,就会发现apt-get可以成功。至于什么是non-login shell,可以参考login shell

$ ssh remote_node "bash --login -c ‘apt-get update‘"

Hit:1 http://mirrors.163.com/ubuntu xenial InRelease
Hit:2 http://mirrors.163.com/ubuntu xenial-security InRelease
Hit:3 http://mirrors.163.com/ubuntu xenial-updates InRelease
Hit:4 http://mirrors.163.com/ubuntu xenial-proposed InRelease
Hit:5 http://mirrors.163.com/ubuntu xenial-backports InRelease
Reading package lists...
Building dependency tree...
Reading state information...
162 packages can be upgraded. Run ‘apt list --upgradable‘ to see them.

解决方法

  将http_proxy和https_proxy的配置放到/etc/environment,或者~/.ssh/environment中。再次执行ceph-deploy install,成功。

时间: 2024-08-07 16:59:04

CEPH-DEPLOY INSTALL时,远端节点在执行APT-GET UPDATE命令时失败的相关文章

gdb在执行maintenance info program-spaces命令时coredump

coredump时的信息: (gdb) maintenance info program-spaces *** Error in `gdb': free(): invalid pointer: 0x0000000003c6bcf0 *** ======= Backtrace: ========= /lib64/libc.so.6(+0x7d1fd)[0x7fc875c0d1fd] gdb(find_pc_section+0x99)[0x605089] gdb(lookup_minimal_sym

Ceph 13.2.8 三节点部署

bs-k8s-ceph 20.0.0.208 eth010.0.0.208 eth1 mon osd mgr deploy 2c2g sdb sdc sdd 各20G bs-hk-hk01 20.0.0.206 eth010.0.0.206 eth1 mon osd mgr 2c2g sdb sdc sdd 各20G bs-hk-hk02 20.0.0.207 eth010.0.0.207 eth0 mon osd mgr 2c2g sdb sdc sdd 各20G bs-k8s-node01

Ceph:添加新的OSD节点

Ceph:添加新的OSD节点 一.Ceph新的OSD节点上的操作 1.1 配置ceph的yum源 cat /etc/yum.repos.d/ceph-aliyun.repo [ceph] name=ceph baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/ gpgcheck=0 priority =1 [ceph-noarch] name=cephnoarch baseurl=http://mirrors.aliyun.co

搭建ceph集群(单节点)

https://blog.csdn.net/Greenchess/article/details/77525786 软件环境: - Centos7 x64 CEPH版本 : - ceph-deploy v1.5.37 - ceph version 10.2.9 步骤1.修改主机名(即节点名) 1) sed -i ‘/HOSTNAME/d’ /etc/sysconfig/network echo “HOSTNAME=主机名” >> /etc/sysconfig/network cat /etc/

执行sudo命令时command not found的解决办法

问题的原因: 在编译sudo包的时候默认开启了- -with-secure-path选项. 方法1: sudo vim /etc/sudoers,并在文件内增加这么一行:Defaults secure_path="/bin:/usr/bin:/usr/local/bin:-", 把要用的命令path包括进去. 在非root下,可以执行很多命令. 在root命令下,却提示 command not found.例如 使用vim 现象: 当我们用sudo来执行cd.ls等命令时,会出现com

linux -- 启动时启动服务或者执行命令

运行等级 首先,我们需要知道Linux系统关于运行等级的知识.在不同的linux系统上(例如ubuntu和Fedora)这些数字与和所代表的意义可能不同,但主要的有以下几个: 单用户模式. 多用户模式. 网络多用户模式. 用于特殊目的的预留 添加显示管理器到等级3 因此,对于普通的运行等级,服务使用等级3,这时不管X11是否启动,服务将自动启动. 服务,守护进程,服务器 在Ubuntu中,可以使用sys-rc-conf命令简单的选择需要启动的已安装服务. 在Fedora下,可以使用chkconf

FW 执行Git命令时出现各种 SSL certificate problem 的解决办法

比如我在windows下用Git clone gitURL 就提示  SSL certificate problem: self signed certificate 这种问题,在windows下出现得频率高些.我估计主要是git本身就是基于linux开发的,在windows上,容易缺失一些环境. 参考了一些文章,解决方法其实就是“直接不管ssl证书的事儿”-_-||| 方法如下: 1.创建临时环境变量: windows上命令行输入: [plain] view plain copy set GI

VirtualTreeview鼠标移动到相应节点时,节点背景颜色发生变化

VirtualTreeview鼠标移动到相应节点时,节点背景颜色发生变化 procedure TForm1.VirtualStringTree1BeforeItemErase( Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect; var ItemColor: TColor; var EraseAction: TItemEraseAction); begin if Sender.

SQL2008、SQL2013 执行Transact-SQL 语句或者批处理时发生了异常。错误5120

附加数据库的时候遇到问题,问题描述如下: 附加数据库 对于 服务器"服务器名"失败.(Microsoft.SqlServer.Smo) 执行Transact-SQL 语句或者批处理时发生了异常.错误5120 原因权限不够.以管理员身份运行dbms.或者找到数据文件,右键--属性---安全--给用户组添加点权限.