小编ada*_*ily的帖子

一个故障驱动器 + 一个坏扇区是否会破坏整个 RAID 5?

在 Synology Disk Station 上规划我的 RAID 设置期间,我阅读了大量有关各种 RAID 类型的文章,这是一本很棒的读物:RAID 级别URE(不可恢复的读取错误)的重要性。

但是,我还不清楚一件事:

让我们有两个场景:

  1. 阵列是2 个驱动器的RAID 1
  2. 阵列是3 个驱动器的RAID 5

两种情况的相同假设:

  • 让我们在 RAID 阵列上有 100.000 个文件
  • 一个驱动器出现故障(需要更换)
  • 重建阵列时碰巧有一个坏扇区(URE)

发生什么了?使用 99.999 个文件重建 RAID 是否正常而 1 个文件丢失?还是我会丢失所有 100.000 个文件?

如果答案需要文件系统类型的知识,假设它是 BTRFS 或 ZFS 作为文件系统。

raid disaster-recovery data-recovery

9
推荐指数
1
解决办法
1308
查看次数

docker-compose `restart:always` 随机不起作用

我管理一些安装了 Docker CE 的 Debian 服务器,并且 docker-compose 编排了多个服务(每台机器大约 20 个容器)。

每个服务都配置有restart: always每个服务都在 docker-compose 中但是,有一些随机服务(通常每台计算机有 1-2 个)可以正确关闭,但在主机重新启动期间不会重新启动。这种行为是完全随机的。有时所有服务都会启动,有时 docker-compose.yml 文件中的一项服务不会重新启动。

以下是 Traefik 正确关闭但未出现的示例:

  1. 配置为自动重启的服务:
$ cat docker-compose.yml
version: '3'

services:
  reverse-proxy:
    image: traefik:1.7
    restart: always
    command: --web
    ports:
      - "80:80"
      - "443:443"
      - "8080:8080"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik.toml:/traefik.toml
    networks:
      - web

Run Code Online (Sandbox Code Playgroud)
  1. 退出代码是 128
$ docker-compose ps
         Name                Command        State     Ports
-----------------------------------------------------------
traefik_reverse-proxy_1   /traefik --web   Exit 128
Run Code Online (Sandbox Code Playgroud)
  1. 日志显示该服务已正确关闭,但此后没有任何活动迹象:
$ docker-compose logs --tail 6 -t
Attaching to traefik_reverse-proxy_1
reverse-proxy_1  | 2022-01-21T14:05:28.042399112Z …
Run Code Online (Sandbox Code Playgroud)

debian docker docker-compose

5
推荐指数
0
解决办法
6189
查看次数