小编Ada*_*ski的帖子

Kubernetes - 为每个卷(而不是每个 pod)设置自定义权限/文件所有权

有没有办法在 Kubernetes 中以声明方式设置每个卷的权限/所有权?

用例:

  • 一个 Pod 由两个容器组成,作为两个不同的用户/组运行,它们都是非 root 用户,并且无法 sudo
  • 容器分别挂载一个卷,并需要在这些卷中创建文件(例如,它们都想写入日志)

我们知道我们可以使用fsGroup,但这是一个 pod 级别的声明。所以即使我们在第一个容器中选择 fsGroup 等于用户,那么我们也会在另一个容器中遇到权限问题。(参考:Kubernetes:如何设置 VolumeMount 用户组和文件权限

kubernetes

6
推荐指数
1
解决办法
7781
查看次数

如何从 long+TimeUnit 转换为 Duration?

我正在将一些签名从 迁移f(long dur, TimeUnit timeUnit)f(Duration duration),并希望用后者来实现前者。

在 Java 8 上,我找不到任何 API 可以轻松地将long+转换TU为 a Duration,我唯一的想法就是做一些丑陋的事情,例如:

static Duration convert(long dur, TimeUnit timeUnit) {
  switch (timeUnit) {
    case DAYS:
      return Duration.ofDays(dur);
    case HOURS:
      /* alternative, but (again) I don't have an easy conversion from TimeUnit -> ChronoUnit */
      return Duration.of(dur, ChronoUnit.HOURS);
    case ..... /* and so on */
  }
}
Run Code Online (Sandbox Code Playgroud)

或者我错过了一些API?

java java-8 timeunit java-time chronounit

6
推荐指数
2
解决办法
2631
查看次数

Kubernetes网络策略可同时过滤名称空间和Pod的标签

是否可以同时按名称空间 pod的标签进行过滤?

文档中的示例位于https://kubernetes.io/docs/user-guide/networkpolicies/#the-networkpolicy-resource

 - from:
 - namespaceSelector:
    matchLabels:
     project: myproject
 - podSelector:
    matchLabels:
     role: frontend
Run Code Online (Sandbox Code Playgroud)

表示允许与role=frontend 来自的广告连播进行通讯namespace myproject

有什么办法可以将“或”更改为“与”?

kubernetes

5
推荐指数
2
解决办法
2849
查看次数

如何以线程安全的方式迭代(系统)属性?

以下片段开始抛出ConcurrentModificationException我的应用程序(在迭代器中):

final Map<?, ?> systemProperties = System.getProperties()
final Map<String, String> properties = (Map<String, String>) systemProperties

for (final Entry<String, String> entry : properties.entrySet()) { // exception here
    System.out.println(entry)
}
Run Code Online (Sandbox Code Playgroud)

我正在运行一个多线程应用程序,不幸的是我无权访问正在修改系统属性的代码(它甚至可能是第三方库)。

java concurrency system-properties

3
推荐指数
1
解决办法
3356
查看次数