Я хочу подключиться из Google Cloud Function к контейнеру Kubernetes (GKE).В частности, контейнер имеет базу данных postgres, и я хочу читать записи в таблице.
На Golang:
func ConnectPostgres(w http.ResponseWriter, r *http.Request) {
db, err := sql.Open("postgres", "postgresql://postgres@10.32.0.142:5432/myDatabase")
if err != nil {
http.Error(w, "Error opening conn:" + err.Error(), http.StatusInternalServerError)
}
defer db.Close()
err = db.Ping()
if err != nil {
http.Error(w, "Error ping conn:" + err.Error(), http.StatusInternalServerError)
}
rows, err := db.Query("SELECT * FROM myTable")
fmt.Println(rows)
w.Write([]byte(rows))
}
10.32.0.142 - внутренний IP-адрес модуля, в котором находится контейнер.
Но когда облачная функция пытается выполнить Ping to postgres контейнер, время запроса истекает.
Как я могу решить эту проблему?