AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-177725

Prashant Lakhera's questions

Martin Hope
Prashant Lakhera
Asked: 2019-10-26 09:15:05 +0800 CST

docker stack deploy 如何工作?

  • 0

我是 docker swarm 的新手,想了解 docker stack deploy 的工作原理

version: '3'
services:
 web:
image: nginx
ports:
  - "80:80"
redis:
image: "redis:alpine"

当我运行这个命令时,它工作得很好

$ docker stack deploy -c docker-compose.yml mystack
 Creating network mystack_default
 Creating service mystack_web
 Creating service mystack_redis

验证它

$ docker stack ps mystack
ID                  NAME                IMAGE               NODE                          
DESIRED STATE       CURRENT STATE           ERROR               PORTS
rcci590y5c6o        mystack_redis.1     redis:alpine        
plakhera1.example.com   Running             Running 9 seconds ago                       
lty84a77b4my        mystack_web.1       nginx:latest        
plakhera2.mylabserver.com   Running             Running 2 seconds ago 

现在我的问题是如何确保每次部署此应用程序/服务时,Redis 都会出现在 plakhera1.example.com 上,而 nginx 会出现在 plakhera2.example.com 上。我相信目前它随机选择节点,所以我怎样才能确保它总是只选择那些节点。

更新:场景是我的 web 是基本应用程序,但 Redis 做了很多繁重的工作,这就是为什么我总是希望 Redis 位于强大的节点上,有什么方法可以通过 docker stack deploy 指定 web 总是启动在 node1 上运行,在 node2 上运行 Redis

docker
  • 1 个回答
  • 160 Views
Martin Hope
Prashant Lakhera
Asked: 2019-09-24 13:39:38 +0800 CST

如何找出哪个docker容器使用了哪个docker镜像

  • 0

我正在尝试编写一个脚本或一个班轮来找出哪个 docker 容器使用了 docker 映像

例如:假设我有一个 docker 镜像 9f38484d220f,现在我需要找出使用这个镜像创建的容器。

我知道docker inspect <container id>给我一个 Image 和一个容器 id 但有没有其他方法可以做到这一点?

docker
  • 2 个回答
  • 1078 Views
Martin Hope
Prashant Lakhera
Asked: 2016-12-17 21:13:15 +0800 CST

光纤多路径失败:结果:hostbyte=DID_ERROR driverbyte=DRIVER_OK

  • 7

我正在尝试在后端同一数据中心的两台服务器之间复制(使用 rsync 约 7TB 的数据),它使用 EMC VMAX3

复制约 30-40GB 的数据后,多路径开始失败

Dec 15 01:57:53 test.example.com multipathd: 360000970000196801239533037303434: Recovered to normal mode
Dec 15 01:57:53 test.example.com multipathd: 360000970000196801239533037303434: remaining active paths: 1
Dec 15 01:57:53 test.example.com kernel: sd 1:0:2:20: [sdeu]  Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK 

[root@test log]# multipath -ll |grep -i fail
 |- 1:0:0:15 sdq  65:0   failed ready running
  - 3:0:0:15 sdai 66:32  failed ready running

我们使用默认的 multipath.conf

HBA driver version  8.07.00.26.06.8-k

HBA model QLogic Corp. ISP8324-based 16Gb Fibre Channel to PCI Express Adapter

OS: CentOS 64-bit/2.6.32-642.6.2.el6.x86_64
Hardware:Intel/HP ProLiant DL380 Gen9

已验证此解决方案并与 EMC 检查一切看起来都不错https://access.redhat.com/solutions/438403

更多信息

- 网络侧没有丢弃/错误数据包。

  • 使用 noatime、nodiratime 挂载文件系统
  • 文件系统 ext4(已经尝试过 xfs 但同样的错误)
  • LVM 处于条带模式(以线性选项开始,然后转换为条带)
  • 已禁用 THP

  • echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled

  • 每当多路径启动失败进程进入 D 状态
  • 系统固件升级
  • 尝试使用最新版本的 qlogic 驱动程序
  • 尝试使用不同的调度程序(noop、deadline、cfq)
  • 尝试使用不同的调整配置文件(企业存储)

发行期间收集的 Vmcore

我可以在发布期间收集 vmcore

  KERNEL: /usr/lib/debug/lib/modules/2.6.32-642.6.2.el6.x86_64/vmlinux
DUMPFILE: vmcore  [PARTIAL DUMP]
    CPUS: 36
    DATE: Fri Dec 16 00:11:26 2016
  UPTIME: 01:48:57
  LOAD AVERAGE: 0.41, 0.49, 0.60
   TASKS: 1238
NODENAME: test.example.com
 RELEASE: 2.6.32-642.6.2.el6.x86_64
 VERSION: #1 SMP Wed Oct 26 06:52:09 UTC 2016
 MACHINE: x86_64  (2297 Mhz)
  MEMORY: 511.9 GB
   PANIC: "BUG: unable to handle kernel NULL pointer dereference at 0000000000000018"
     PID: 15840
 COMMAND: "kjournald"
    TASK: ffff884023446ab0  [THREAD_INFO: ffff88103def4000]
     CPU: 2
   STATE: TASK_RUNNING (PANIC)

在 qlogic sid 上启用调试模式后

qla2xxx [0000:0b:00.0]-3822:5: FCP command status: 0x2-0x0 (0x70000) nexus=5:1:0 portid=1f0160 oxid=0x800 cdb=2a200996238000038000 len=0x70000 rsp_info=0x0 resid=0x0 fw_resid=0x0 sp=ffff882189d42580 cp=ffff88276d249480.
qla2xxx [0000:84:00.0]-3822:7: FCP command status: 0x2-0x0 (0x70000) nexus=7:0:3 portid=450000 oxid=0x4de cdb=2a20098a5b0000010000 len=0x20000 rsp_info=0x0 resid=0x0 fw_resid=0x0 sp=ffff882189d421c0 cp=ffff8880237e0880.
hardware storage centos6 multipath
  • 4 个回答
  • 9529 Views
Martin Hope
Prashant Lakhera
Asked: 2015-06-18 10:13:19 +0800 CST

EC2 与 EBS 的连接

  • 0

我是 AWS 的新手,这听起来可能是一个奇怪的问题。我的问题是当我尝试创建一个新的 EBS 卷并尝试将它与正在运行的 EC2 实例连接时,两个(EC2 实例 --> EBS 卷)之间的连接已经结束公共 IP 或连接使用私有 IP。我知道 EBS 仅提供块级存储,但我想了解 EC2 实例将如何访问该存储。

amazon-ec2
  • 1 个回答
  • 54 Views
Martin Hope
Prashant Lakhera
Asked: 2015-03-04 18:37:01 +0800 CST

Logstash Grok 模式

  • 1

首先我为此道歉,我在正则表达式方面很糟糕,并尝试编写自定义模式(因为我无法在现有的 grok 模式中找到一些东西,或者我可能遗漏了一些东西)来解析 svn 日志的格式

r24|prashant|2015-02-26 12:38:04 -0800 (Thu, 26 Feb 2015)|33|Log: ABC-123 / Initial version||A   test/log_testing1 A   test/log_testing2 A   test/log_testing3 A   test/log_testing4 A   test/log_testing5 \n

所以它的格式为

$REVISION:$USER ID:$DATE:$CHECKED IN MESSAGE:$FILE CHECKED IN 

所以我写了一些自定义模式

SVN [r0-9]
SVN_TIMESTAMP %{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{HOUR}:?%{MINUTE}(?::?%{SECOND})?%{ISO8601_TIMEZONE}?  (%{DAY}, %{MONTHDAY} %{MONTH} %{YEAR})

我的 logstash-conf 对于过滤器部分看起来像这样

filter {
  grok {
  match => { "message" => "%{SVN:revision}|%{USERNAME:username}|%{SVN_TIMESTAMP:svntimestamp}|%{GREEDYDATA:syslog_message}||%{GREEDYDATA:syslog_message" }
}

}

我不确定它是否正确,但像往常一样它不起作用。非常感谢任何帮助

logstash
  • 1 个回答
  • 3668 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve