标签: coreos

我的coreos/fleet部署的服务正在消亡,我不知道为什么

我正在尝试在EC2中使用一个品牌闪亮的新coreos集群上使用fleet部署nsqlookupd.这是我的systemd单元文件:

[Unit]
Description=nsqlookupd service
After=docker.service
Requires=docker.service

[Service]
EnvironmentFile=/etc/environment
ExecStartPre=-/usr/bin/docker kill nsqlookupd
ExecStartPre=-/usr/bin/docker rm nsqlookupd
ExecStart=/usr/bin/docker run -d --name=nsqlookupd -e BROADCAST_ADDRESS=$COREOS_PUBLIC_IPV4 -p 4160:4160 -p 4161:4161 mikedewar/nsqlookupd
ExecStartPost=/usr/bin/etcdctl set /nsqlookupd_broadcast_address $COREOS_PUBLIC_IPV4
ExecStop=/usr/bin/docker stop -t 1 nsqlookupd
ExecStopPost=/usr/bin/etcdctl rm /nsqlookupd_broadcast_address
Run Code Online (Sandbox Code Playgroud)

如果我只是运行ExecStart命令,我已经验证了容器工作正常.我的码头日志看起来像

~ $ docker logs nsqlookupd
2014/08/08 02:23:58 nsqlookupd v0.2.29-alpha (built w/go1.2.2)
2014/08/08 02:23:58 TCP: listening on [::]:4160
2014/08/08 02:23:58 HTTP: listening on [::]:4161
Run Code Online (Sandbox Code Playgroud)

我的fleetctl期刊看起来像

$ fleetctl journal nsqlookupd.service
-- Logs begin at Sun 2014-08-03 12:49:00 UTC, end at Fri 2014-08-08 …
Run Code Online (Sandbox Code Playgroud)

docker coreos

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

在CoreOS上运行Kubernetes示例,第1部分不起作用

我正在努力评估Kubernetes.我有兴趣在CoreOS集群上安装kubernetes,官方文档不多,只有两篇对CoreOS博客的引用; 我目前正在使用指南在CoreOS第1部分上运行kubernetes示例.

我的apiserver.service:

[Unit]
ConditionFileIsExecutable=/opt/kubernetes/bin/apiserver
Description=Kubernetes API Server
[Unit]
ConditionFileIsExecutable=/opt/kubernetes/bin/controller-manager
Description=Kubernetes Controller Manager
Documentation=https://github.com/GoogleCloudPlatform/kubernetes

[Service]
ExecStart=/opt/kubernetes/bin/controller-manager \
--etcd_servers=http://127.0.0.1:4001 \
--master=127.0.0.1:8080 \
--logtostderr=true
Restart=on-failure
RestartSec=1

[Install]
WantedBy=multi-user.target
Documentation=https://github.com/GoogleCloudPlatform/kubernetes

[Service]
ExecStart=/opt/kubernetes/bin/apiserver \
--address=127.0.0.1 \
--port=8080 \
--etcd_servers=http://127.0.0.1:4001 \
--machines=127.0.0.1 \
--logtostderr=true
Restart=on-failure
RestartSec=1

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

我的controller-manager.service:

[Unit]
ConditionFileIsExecutable=/opt/kubernetes/bin/controller-manager
Description=Kubernetes Controller Manager
Documentation=https://github.com/GoogleCloudPlatform/kubernetes

[Service]
ExecStart=/opt/kubernetes/bin/controller-manager \
--etcd_servers=http://127.0.0.1:4001 \
--master=127.0.0.1:8080 \
--logtostderr=true
Restart=on-failure
RestartSec=1

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

我的kubelet.service:

[Unit]
ConditionFileIsExecutable=/opt/kubernetes/bin/kubelet
Description=Kubernetes Kubelet
Documentation=https://github.com/GoogleCloudPlatform/kubernetes

[Service]
ExecStart=/opt/kubernetes/bin/kubelet \
--address=127.0.0.1 \
--port=10250 \
--hostname_override=127.0.0.1 …
Run Code Online (Sandbox Code Playgroud)

docker coreos kubernetes

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

在运行CoreOS VM的vagrant的Windows上使用rsync

我正在使用Windows 8.1 Pro pc运行vagrant和cygwin的rsync.

我这样配置:

config.vm.synced_folder "../sharedFolder", "/vagrant_data", type: "rsync"
Run Code Online (Sandbox Code Playgroud)

当我执行时,vagrant up我收到以下错误:

C:\dev\vagrantBoxes\coreOS>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'yungsang/coreos' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 => 2222 (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting …
Run Code Online (Sandbox Code Playgroud)

windows rsync cygwin vagrant coreos

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

在CoreOS主机之间移动docker数据卷容器

对于某些情况,群集文件系统太多了.如果我做对了,那就是数据卷容器模式的用例.但即使是CoreOS也需要不时更新.如果我还想最大限度地减少应用程序的停机时间,我必须将带有应用程序容器的数据卷容器移动到另一台主机,同时更新旧主机.

是否存在最佳实践?提到更多的时候一个解决方案是"备份"容器docker export旧主机上,并docker import在新主机上.但这包括将tar文件scp到其他主机.这可以用车队管理吗?

linux deployment orchestration docker coreos

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

Vagrant"身份验证失败"在上升期间,但"vagrant ssh"可以很好地进入

我很难过.我正在尝试在Windows 8.1上运行vagrant/virtualbox/coreos集群来开发用于在云中运行的集群.我在四台机器上尝试了这一点(所有这些都是带有最新更新的Windows 8.1,并且都配有最新的VirtualBox,Vagrant,Git和Vagrant的相同配置.我正在检查所有4系统上的回购中的Vagrant配置所以我相信每个人的配置是相同的.我获得了2次成功和2次失败.

两台机器成功如下:

Bringing machine 'core-01' up with 'virtualbox' provider...
==> core-01: Checking if box 'coreos-stable' is up to date...
(snip)
    core-01: SSH address: 127.0.0.1:2222
    core-01: SSH username: core
    core-01: SSH auth method: private key
    core-01: Warning: Connection timeout. Retrying...
==> core-01: Machine booted and ready!
==> core-01: Setting hostname...
==> core-01: Configuring and enabling network interfaces...
Run Code Online (Sandbox Code Playgroud)

流浪的ssh和vagrant都可以在这两个系统上正常工作.

另外两台Windows机器失败如下:

Bringing machine 'core-01' up with 'virtualbox' provider...
==> core-01: Importing base box 'coreos-stable'...
==> core-01: Matching …
Run Code Online (Sandbox Code Playgroud)

windows ssh vagrant coreos

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

如何在CoreOS中加载平衡服务?

  • 我有一个运行3个web conntainers的coreos集群,每个集合运行相同的Web应用程序.
  • 如何使用haproxy和nginx将我的请求与这些正在运行的容器进行负载均衡.
  • 请建议.

nginx haproxy docker coreos

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

docker在使用v2时正在使用v1注册表api

我正在尝试使用自托管的docker注册表v2.我应该能够推送一个docker镜像,它在运行注册表v2容器的主机服务器(coreos)上本地工作.但是,当我尝试推送到注册表时,在单独的机器(也是coreos,相同版本)上,它尝试推送到v1,给出此错误:

Error response from daemon: v1 ping attempt failed with error: Get 
https://172.22.22.11:5000/v1/_ping: dial tcp 172.22.22.11:5000: i/o timeout. 
If this private registry supports only HTTP or HTTPS with an unknown CA 
certificate, please add `--insecure-registry 172.22.22.11:5000` to the 
daemon's arguments. In the case of HTTPS, if you have access to the registry's 
CA certificate, no need for the flag; simply place the CA certificate at 
/etc/docker/certs.d/172.22.22.11:5000/ca.crt 
Run Code Online (Sandbox Code Playgroud)

两台机器的docker可执行文件都是v1.6.2.为什么一个工作并推动v2但另一个是v1?

这是注册表的回购:https://github.com/docker/distribution

docker coreos docker-registry

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

Kubernetes API pod拒绝连接

我目前正在尝试使用CoreOS和Kubernetes设置一个小型集群.首先,我正在学习教程.我有三台运行在VirtualBox上的CoreOS机器,使用vagrant.我到达了教程的第二步,但卡住了.

我似乎能够使用启动kubelet systemctl start kubelet,但我似乎无法连接到API服务器.似乎它没有启动API服务器,但首先尝试连接到它.

当我进入时curl http://127.0.0.1:8080/version,我curl: (7) Failed to connect to 127.0.0.1 port 8080: Connection refused回来了.

Journalctl只是告诉我kubelet正在尝试连接到API服务器,并且由于无法访问API服务器,我无法使用kubectl来查看Pod发生了什么.我该如何解决这个问题?

编辑:

我手动执行了docker命令,得到了以下内容:

I1109 09:30:18.680796       1 plugins.go:69] No cloud provider specified.
I1109 09:30:18.826523       1 master.go:273] Node port range unspecified. Defaulting to 30000-32767.
E1109 09:30:18.847815       1 reflector.go:136] Failed to list *api.ResourceQuota: Get http://127.0.0.1:8080/api/v1/resourcequotas: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848277       1 reflector.go:136] Failed to list *api.Secret: Get http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token: dial tcp 127.0.0.1:8080: connection refused
E1109 09:30:18.848581 …
Run Code Online (Sandbox Code Playgroud)

coreos kubernetes

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

'docker run -v'在使用Docker Toolbox的Windows上不起作用

从CoreOS VM运行以下命令时,它按预期工作:

docker run --rm -v $PWD:/data composer init
Run Code Online (Sandbox Code Playgroud)

它将composer.json使用指定的Docker卷映射初始化当前工作目录中的文件.Docker容器基本上安装了PHP工具组合器,并将/data在容器的文件夹中运行该工具.通过使用映射,它实际上将其应用于主机上的文件.

但是,当尝试使用Docker Toolbox在Windows上运行此命令时,我收到以下错误.

$ docker run --rm -v $PWD:/data composer --help
invalid value "C:\\Users\\Marco;C:\\Program Files\\Git\\data" for flag -v: bad mount mode specified : \Program Files\Git\data
See 'C:\ProgramData\Chocolatey\lib\docker\bin\docker.exe run --help'.
Run Code Online (Sandbox Code Playgroud)

我在这里注意到的是,虽然我在Git Bash执行命令时它仍使用Windows路径.那么我试着跟随(用引号括起来):

$ "docker run --rm -v $PWD:/data composer --help"
bash: docker run --rm -v /c/Users/Marco:/data composer --help: No such file or directory
Run Code Online (Sandbox Code Playgroud)

现在它无法找到该目录.

我也试过没有$ PWD变量,但这没有什么区别.

如何在Windows上进行此操作?

windows bash docker coreos docker-toolbox

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

安装的卷不会填充docker图像内容

我跑Container Linux by CoreOS 1618.0.0 (Ladybug).

rkt Version: 1.29.0

我创建了一个systemd服务文件来运行docker nagios图像:

[Unit]
Description=Nagios
Requires=network-online.target local-fs.target
After=network-online.target local-fs.target

[Install]
WantedBy=multi-user.target

[Service]
Slice=machine.slice
ExecStart=/usr/bin/rkt run --port=80-tcp:8018 --insecure-options=image --volume volume-var-log-apache2,kind=host,source=/mnt/storage/nagios/apache2-log --volume volume-usr-share-snmp-mibs,kind=host,source=/mnt/storage/nagios/snmp-mibs --volume volume-opt-nagiosgraph-etc,kind=host,source=/mnt/storage/nagios/nagiosgraph/etc --volume volume-opt-nagiosgraph-var,kind=host,source=/mnt/storage/nagios/nagiosgraph/var --volume volume-opt-nagios-libexec,kind=host,source=/mnt/storage/nagios/nagios/libexec --volume volume-opt-nagios-var,kind=host,source=/mnt/storage/nagios/etc,readOnly=false --volume volume-opt-nagios-etc,kind=host,source=/mnt/storage/nagios/var,readOnly=false --volume volume-opt-custom-nagios-plugins,kind=host,source=/mnt/storage/nagios/custom-plugins docker://jasonrivers/nagios:latest
KillMode=mixed
Restart=always
RestartSec=0
ExecStopPost=/usr/bin/rkt gc --mark-only
Run Code Online (Sandbox Code Playgroud)

现在问题是安装的parittions没有填充相关的图像文件.

通常我所做的是提取图像本身并手动复制相关文件.

问题是......还有另一个吗?

希望我错过了一个rkt参数,该参数用安装位置中docker镜像中的文件填充相关的已安装目录

有任何想法吗 ?

docker coreos rkt

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