小编shi*_*zhz的帖子

CentOS 7.2上的Docker:内核:unregister_netdevice:等待lo变为空闲.使用次数= 1

我在CentOS 7上运行Docker,不时会显示以下消息:

Message from syslogd@dev-master at Mar 29 17:23:03 ...
  kernel:unregister_netdevice: waiting for lo to become free. Usage count = 1
Run Code Online (Sandbox Code Playgroud)

我已经google了很多,阅读了很多资源,并尝试了很多方法,如保持我的系统更新,升级内核等,但消息仍然不断出现,它不是经常,但迟早我会看到它.另外我发现在docker github上这个问题的问题仍然是开放的,那么我的问题是:

  1. 这条消息是什么意思?有人能给我一个简单的解释,为什么码头工人造成它?
  2. 这有什么解决方法吗?
  3. 如果它还无法修复(问题仍然存在),它是否会影响在docker容器内运行的服务器或服务?这是一个严重的性能问题,因为它也发生在我们的生产服务器上?

Docker版本:

Client:
 Version:      1.11.1
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   5604cbe
 Built:        Wed Apr 27 00:34:42 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.11.1
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   5604cbe
 Built:        Wed Apr 27 00:34:42 2016
 OS/Arch:      linux/amd64
Run Code Online (Sandbox Code Playgroud)

OS信息:

CentOS 7, with kernel version: 4.6.0-1.el7.elrepo.x86_64
Run Code Online (Sandbox Code Playgroud)

非常感谢任何信息/提示或资源,非常感谢.

networking centos loopback docker centos7

56
推荐指数
1
解决办法
2万
查看次数

让Ansible和Rundeck一起工作是一个好主意,还是使用任何一个就足够了?

最近我在看Ansible,并希望在项目中使用它.还有另一个工具Rundeck可以用来做各种操作工作.我对这两种工具都没有经验,这是我目前对它们的理解:

类似的观点

  • 这两个工具都是无代理的,并使用SSH在远程服务器上执行命令

  • Rundeck的主要概念是Node,与Ansible的库存相同,关键思想是定义/管理/分组目标服务器

  • Rundeck可以在选定的节点上执行ad-hoc命令,Ansible也可以非常方便地执行此操作.
  • Rundeck可以定义工作流并在选定的节点上执行,这可以通过编写playbook来使用Ansible完成
  • Rundeck可以与Jenkins等CI工具集成进行部署工作,我们也可以定义一个Jenkins作业来运行ansible-playbook来进行部署工作

不同点

  • Rundeck有Job的概念,Ansible没有

  • Rundeck有Job Scheduler,Ansible只能通过Jenkins或Cron任务等其他工具实现这一点

  • 默认情况下,Rundeck免费提供Web UI,但您必须支付Ansible Tower的费用

似乎Ansible和Rundeck都可用于执行配置/管理/部署工作,可能以不同的方式.所以我的问题是:

  • 这两种补充工具是否设计用于不同目的?如果它们是补充工具,为什么Ansibl只与Chef/Puppet/Slat等工具相比而不与Rundeck相比?如果他们不是为什么他们有这么多相似的功能?
  • 我们已经在使用Jenkins for CI,构建一个Continuous-Delivery管道,哪个工具(Ansible/Rundeck)更适合用于部署?
  • 如果它们可以一起使用,那么最佳做法是什么?

非常感谢任何建议和经验分享.

jenkins continuous-delivery ansible rundeck devops

43
推荐指数
3
解决办法
2万
查看次数

jupyter notebook导入错误:没有名为'matplotlib'的模块

我是一个ubuntu 16.4用户,我安装了anaconda3并同时使用python2和python3内核.

>>> jupyter kernelspec list可用的内核:python2 /home/peterkim/.local/share/jupyter/kernels/python2 python3/home/peterkim/anaconda3/share/jupyter/kernels/python3

和..问题是,我不知道在哪里/如何安装包,以便我的python2 jupyter笔记本不会出错"没有模块命名...".我试过了pip install matplotlib,conda install matplotlib并且还将'/ home // anaconda2/pkgs'附加到了sys.path.

(我还安装了anaconda2以寻找使用并行内核的方式.之后我意识到不需要anaconda2.但我没有卸载它.)

截图

谢谢你提前帮助我..!

python jupyter-notebook

9
推荐指数
3
解决办法
3万
查看次数

链接或Javascript片段从android captive门户浏览器上的链接打开外部应用程序

我需要从强制网络门户浏览器打开Android应用程序,但我无法用intent://scan/#Intent(意图扫描)实现它,它导致

网:ERR_UNKNOWN_URL_SCHEME.

有没有其他方法可以实现它?

javascript android filter android-intent

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

istio 如何将跟踪范围发送到 jaeger?

我想将 istio 与 K8S 中现有的 jaeger 跟踪系统一起使用,我开始按照cassandra 作为后端存储的官方链接安装 jaeger 系统。然后通过helm way安装 istio ,但只启用了一些选定的组件:

helm upgrade istio -i install/kubernetes/helm/istio --namespace istio-system \   
--set security.enabled=true \   
--set ingress.enabled=false \   
--set gateways.istio-ingressgateway.enabled=true \   
--set gateways.istio-egressgateway.enabled=false \   
--set galley.enabled=false \   
--set sidecarInjectorWebhook.enabled=true \  
--set mixer.enabled=false \   
--set prometheus.enabled=false \
--set global.proxy.envoyStatsd.enabled=false \
--set pilot.sidecar=true \ 
--set tracing.enabled=false
Run Code Online (Sandbox Code Playgroud)

Jaeger 和 istio 安装在同一个 namespace istio-sytem,完成后,里面的所有 pods 长这样:

kubectl -n istio-system get pods                           
NAME            READY     STATUS    RESTARTS   AGE 
istio-citadel-5c9544c886-gr4db      1/1       Running   0 …
Run Code Online (Sandbox Code Playgroud)

zipkin kubernetes istio jaeger envoyproxy

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

Jacoco代码覆盖范围受AspectJ的影响

我们在项目中使用AspectJ,在测试覆盖率报告中也使用Jacoco,当前我们面临一个问题,由于AspectJ在编译阶段更改了字节代码,这使得代码覆盖率报告不正确。一个例子是由于AspectJ添加了额外的if-else语句,然后分支覆盖率显示了1/4之类的东西,但实际上在源代码中没有条件分支。有什么好办法告诉Jacoco忽略AspectJ生成的所有代码?

非常感谢。

java code-coverage aspectj jacoco

5
推荐指数
1
解决办法
1416
查看次数

Java 8流中的JUnit断言

说我有三个对象,我将它们保存到数据库并将db生成的ID设置为其中。我不知道从方法返回的对象的顺序saveToDb。但是我想通过junit测试那些生成的ID是否存在。我该如何在视频流中做到这一点?我想做这样的事情:

List<MyObject> myObjects = getObjects();
numRecords = saveToDb(myObjects); // numRecords=3
List<Integer> intArray = Arrays.asList(1, 2, 3);
intArray.stream()
  .forEach(it -> myObjects.stream()
    .filter(it2 -> it2.getId().equals(it))
    .????
Run Code Online (Sandbox Code Playgroud)

但是我不确定在assertEquals()这样的声明中我会去哪里。还是我的方法全错了?我知道我可以使用简单的for循环,但是我喜欢流的优雅。此外,如果我有3个以上的myObject,是否可以动态创建intArray?

java junit java-stream

5
推荐指数
1
解决办法
8404
查看次数

无法用Spring + Maven退出代码1来执行java

我是Spring/Maven的新手,我正在学习本教程: 使用Spring MVC提供Web内容.

每次我跑mvn spring-boot:run,我都会收到这个错误:

Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.2.RELEASE:run (default-cli) on project gs-serving-web-content: Could not exec java: Application finished with exit code: 1 ->

我试图添加classpath,试图运行mvn install clean spring-boot:run,做了很多其他人在堆栈流程中建议的类似情况,花了超过8小时 - 没用.

这是我的主要课程Application.java:

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) throws Exception{
        SpringApplication.run(Application.class, args);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的GreeetingController.java班级:

package hello;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class GreetingController {

    @RequestMapping("/greeting") …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc maven

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

完整的 IDE 功能支持 Doom Emacs 中的 golang

我是 vim 用户多年,最近开始玩 emacs,在尝试了 Spacemacs 和 Prelude 之后,Doom Emacs 是我的最终选择。那些天我正在使用 (go +lsp) 和 (lsp) 模块配置 golang 开发,Doom 的所有开箱即用功能都令人印象深刻,感谢 hlissner 的出色工作。

现在我对基本功能感到满意,例如:

自动完成

  • 飞行检查
  • 片段
  • 其他 go-mode 功能

但为了提高工作效率,我想要更多类似 IDE 的功能,例如:

  • 导航:到目前为止,我只找到了顾问-imenu,我可以通过它来选择当前缓冲区中的符号(未按方法/函数/var/const/interface 等分组的候选人),但我怎么能做这样的事情:
    • 在项目中查找符号
    • 在项目中查找接口
    • 在项目中查找结构
    • 在项目中查找方法
    • 查找导出的函数,可能在指定的包中
    • 在源代码和相关测试文件/方法之间来回切换
    • 等等...
  • 生成/操作代码的更复杂的操作:snippets 和 go-gen-test 有很大帮助,但是否可以执行以下操作:
    • 在不同范围内生成未声明的方法/字段/函数/包的代码动作,现在似乎只能生成变量。(这是基于 lsp 后端支持吗?我找到了一个 java 视频,但找不到 go 视频)
    • 如果我指定一个接口来实现一个结构,自动生成方法模板
    • 从结构中删除方法
    • 如果我删除一个函数/方法,自动删除相关的测试/工作台函数

有人可以帮我吗?任何经验/提示表示赞赏。

emacs go

5
推荐指数
1
解决办法
4239
查看次数

如何使用 Python 从 Selenium 的重定向链中获取中间 URL?

我在 Python API 和 Firefox 中使用 Selenium 来做一些自动的事情,这是我的问题:

  1. 单击原始页面上的链接,例如在页面a.com 上
  2. 我被重定向到b.com/some/path?arg=value
  3. 然后我立即再次重定向到最终地址c.com

那么有没有办法使用 Selenium Python API获取中间重定向 URL b.com/some/path?arg=value?我试过了,driver.current_url但是当浏览器在b.com 上时,似乎浏览器仍在加载中,并且只有在加载了最终地址c.com时才返回结果。

另一个问题是有没有办法将一些事件处理程序添加到 Selenium 以进行 URL 更改?Phantomjs 有能力,但我不确定 Selenium。

python selenium redirect event-handling selenium-webdriver

4
推荐指数
2
解决办法
1万
查看次数

ISTIO sidecar 导致 Java grpc 客户端在高并发负载下抛出“UNAVAILABLE:上游连接错误或在 headers 之前断开/重置”

我有两个 gRPC 服务,一个将通过正常的 gRPC 方法调用另一个服务(两边都没有流),我使用 istio 作为服务网格,并将 sidecar 注入到这两个服务的 kubernetes pod 中。

正常负载下gRPC调用正常,但在高并发负载情况下,gRPC客户端一直抛出以下异常:

<#bef7313d> i.g.StatusRuntimeException: UNAVAILABLE: upstream connect error or disconnect/reset before headers
    at io.grpc.Status.asRuntimeException(Status.java:526)
    at i.g.s.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:434)
    at i.g.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
    at i.g.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
    at i.g.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
    at i.g.i.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:678)
    at i.g.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
    at i.g.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
    at i.g.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
    at i.g.i.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:397)
    at i.g.i.ClientCallImpl.closeObserver(ClientCallImpl.java:459)
    at i.g.i.ClientCallImpl.access$300(ClientCallImpl.java:63)
    at i.g.i.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:546)
    at i.g.i.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:467)
    at i.g.i.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:584)
    at i.g.i.ContextRunnable.run(ContextRunnable.java:37)
    at i.g.i.SerializingExecutor.run(SerializingExecutor.java:123)
    at j.u.c.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at j.u.c.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Run Code Online (Sandbox Code Playgroud)

同时,服务端没有异常,istio-proxy客户端Pod的容器也没有错误。但是,如果我禁用 istio sidecar 注入,以便这两个服务直接相互通信,则不会出现此类错误。

有人可以告诉我为什么以及如何解决这个问题吗?

多谢。

java grpc grpc-java istio envoyproxy

2
推荐指数
1
解决办法
2921
查看次数

VIM:如何列出指定插件当前缓冲区中的所有键映射

我知道如何使用nmapimap等来查看 vim 中的所有键映射,以及如何列出哪个操作绑定到给定的键绑定。但有时我想快速查看给定插件的所有按键绑定,有没有一种快速的方法可以做到这一点?我不想列出所有键绑定并逐页搜索它们。

提前谢谢了。

vim macvim

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

Common Lisp:如何引用SBCL中的括号

在Common Lisp中,特殊运算符引用使得后面跟未评估的内容一样

(quote a) -> a
(quote {}) -> {}
Run Code Online (Sandbox Code Playgroud)

但为什么表单(quote())给我?我正在使用SBCL 1.2.6,这是我在REPL中得到的:

CL-USER> (quote ())
NIL
Run Code Online (Sandbox Code Playgroud)

关于这个问题的更多信息:这是PCL第24章的一些代码

(defun as-keyword (sym)
  (intern (string sym) :keyword))

(defun slot->defclass-slot (spec)
  (let ((name (first spec)))
    `(,name :initarg ,(as-keyword name) :accessor ,name)))

(defmacro define-binary-class (name slots)
  `(defclass ,name ()
     ,(mapcar #'slot->defclass-slot slots)))
Run Code Online (Sandbox Code Playgroud)

当宏扩展为以下代码时:

(define-binary-class id3-tag
    ((major-version)))
Run Code Online (Sandbox Code Playgroud)

(DEFCLASS ID3-TAG NIL
      ((MAJOR-VERSION :INITARG :MAJOR-VERSION :ACCESSOR MAJOR-VERSION)))
Run Code Online (Sandbox Code Playgroud)

在类名ID3-TAG之后是NIL而不是().

lisp sbcl common-lisp quote

0
推荐指数
1
解决办法
161
查看次数