Kubernetes多容器吊舱

时间:2018-10-06 12:30:13

标签: kubernetes google-kubernetes-engine

你好,我尝试使用一个Pod,其中包含2个容器,一个是c ++应用程序,一个是mysql数据库。我曾经将mysql部署在自己的服务中,但是却遇到了延迟问题。所以我想尝试多容器吊舱。

但是我一直在努力通过本地主机将我的应用程序与mysql连接。它说..

  

无法通过套接字连接到本地MySQL服务器   \'/ var / run / mysqld / mysqld.sock

这是我的kubernetes.yaml。请我需要帮助:(

var fs = require('fs');

module.exports={
  getfiledata: function() {
    console.log("we got this far");
    fs.readFile("mytextfile.txt", function (err, data) {
        if (err) throw err;
        console.log("data: " + data);
        return data;
    })
  }
}

1 个答案:

答案 0 :(得分:1)

您的MySQL客户端配置为使用套接字,而不通过网络堆栈进行通信,请参阅。 MySQL documentation

  

在Unix上,MySQL程序在主机名中特别对待主机名localhost。   与您期望的方式相比其他方式可能有所不同   基于网络的程序。对于与本地主机的连接,MySQL程序   尝试使用Unix套接字文件连接到本地服务器。   即使给--port或-P选项指定端口,也会发生这种情况   数。为确保客户端建立与   本地服务器上,使用--host或-h指定主机名值   127.0.0.1,或本地服务器的IP地址或名称。您还可以通过以下方式显式指定连接协议,即使是本地主机也可以:   使用--protocol = TCP选项。

如果您仍然希望camera-service通过文件系统套接字进行通信,则还需要为camera-service挂载文件系统。目前,您只为db-camera

挂载它