creamy-jelly-91590
05/23/2019, 3:01 PM++ ├─ kubernetes:extensions:Ingress hello-kubernetes-us-east1 creating replacement.. [diff: ~metadata]; [2/3] Waiting for update of .status.loadBalancer with hostname/IP
rapid-eye-32575
05/23/2019, 3:05 PMIt may take a few minutes for GKE to allocate an external IP address and set up forwarding rules until the load balancer is ready to serve your application.
white-balloon-205
creamy-jelly-91590
05/23/2019, 3:08 PMLoadBalancer
for the past few days it was ready within 10 seconds usuallywhite-balloon-205
creamy-jelly-91590
05/23/2019, 3:12 PMconst helloWorldDeployment = new k8s.apps.v1.Deployment(
`${name}-${region}`,
{
metadata: {
name: "hello-kubernetes"
},
spec: {
replicas: 3,
selector: {
matchLabels: appLabels
},
template: {
metadata: {
labels: appLabels
},
spec: {
containers: [
{
name: name,
image: "paulbouwer/hello-kubernetes:1.5"
],
ports: [
{
containerPort: 8080
}
]
}
]
}
}
}
},
{ provider: k8sProvider }
);
const helloWorldService = new k8s.core.v1.Service(
`${name}-${region}`,
{
metadata: {
name: name
},
spec: {
selector: appLabels,
ports: [
{
port: 8080
}
]
}
},
{ provider: k8sProvider }
);
const helloWorldFrontend = new k8s.extensions.v1beta1.Ingress(
`${name}-${region}`,
{
metadata: {
name: name
},
spec: {
rules: [
{
http: {
paths: [
{
path: "/",
backend: {
serviceName: name,
servicePort: 8080
}
}
]
}
}
]
// ports: [{ port: 80, targetPort: 8080, protocol: "TCP" }],
// selector: appLabels,
}
},
{ provider: k8sProvider }
);
rapid-eye-32575
05/23/2019, 3:17 PMcreamy-jelly-91590
05/23/2019, 3:17 PMrapid-eye-32575
05/23/2019, 3:17 PMcreamy-jelly-91590
05/23/2019, 3:18 PM// Default values for constructing the `Cluster` object.
const defaultClusterOptions = {
nodeCount: 1,
nodeMachineType: "n1-standard-1",
minMasterVersion: kubeVersion,
masterUsername: "",
masterPassword: ""
};
const cluster = new gcp.container.Cluster(`${name}-${region}`, {
project,
region: region,
initialNodeCount: config.nodeCount || defaultClusterOptions.nodeCount,
minMasterVersion: defaultClusterOptions.minMasterVersion,
removeDefaultNodePool: true,
network: network.name,
subnetwork: subnet.name,
masterAuth: {
username: defaultClusterOptions.masterUsername,
password: defaultClusterOptions.masterPassword
}
});
const poolName = `${name}-${region}-default-pool`;
const defaultNodePool = new gcp.container.NodePool(poolName, {
name: poolName,
cluster: cluster.name,
version: kubeVersion,
initialNodeCount: 1,
location: region,
nodeConfig: {
machineType:
config.nodeMachineType || defaultClusterOptions.nodeMachineType,
oauthScopes: [
"<https://www.googleapis.com/auth/compute>",
"<https://www.googleapis.com/auth/devstorage.read_only>",
"<https://www.googleapis.com/auth/logging.write>",
"<https://www.googleapis.com/auth/monitoring>"
]
},
management: {
autoUpgrade: false,
autoRepair: true
}
});
rapid-eye-32575
05/23/2019, 3:18 PMcreamy-jelly-91590
05/23/2019, 3:19 PMcreamy-potato-29402
05/23/2019, 3:19 PMcreamy-jelly-91590
05/23/2019, 3:20 PMcreamy-potato-29402
05/23/2019, 3:20 PMcreamy-jelly-91590
05/23/2019, 3:21 PMrapid-eye-32575
05/23/2019, 3:21 PMcreamy-jelly-91590
05/23/2019, 3:22 PMerror while evaluating the ingress spec: service "default/hello-kubernetes" is type "ClusterIP", expected "NodePort" or "LoadBalancer
rapid-eye-32575
05/23/2019, 3:26 PMLoadBalancer
in your case of relying on the ingress controller of GKE itself (And when the annotation <http://kubernetes.io/ingress.class|kubernetes.io/ingress.class>
is absent from your ingress). But interesting why this error isn't reported in Pulumi...creamy-jelly-91590
05/23/2019, 3:27 PMrapid-eye-32575
05/23/2019, 3:28 PMLoadBalancer
creamy-jelly-91590
05/23/2019, 3:28 PMrapid-eye-32575
05/23/2019, 3:29 PMcreamy-jelly-91590
05/23/2019, 3:31 PMLoadBalancer
does not seem to make it respond to requests eitherError: Server Error
The server encountered a temporary error and could not complete your request.
Please try again in 30 seconds.
This is from the GC HTTP LBrapid-eye-32575
05/23/2019, 3:34 PMkubectl port-forward
that the service and the pod is actually answering on port 8080creamy-jelly-91590
05/23/2019, 3:39 PMtargetPort
because its supposed to be set to the same as port
if specified. I am following this and applying it with Pulumi: https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancerrapid-eye-32575
05/23/2019, 3:51 PMcreamy-jelly-91590
05/23/2019, 3:54 PMcreamy-potato-29402
05/23/2019, 4:06 PMIngress
with implementation in mindcreamy-jelly-91590
05/23/2019, 4:13 PMcreamy-potato-29402
05/23/2019, 4:13 PMcreamy-jelly-91590
05/23/2019, 4:13 PMcreamy-potato-29402
05/23/2019, 4:14 PMcreamy-jelly-91590
05/23/2019, 4:14 PMcreamy-potato-29402
05/23/2019, 4:14 PMIngress
status.creamy-jelly-91590
05/23/2019, 4:16 PMcreamy-potato-29402
05/23/2019, 4:17 PMcreamy-jelly-91590
05/23/2019, 4:17 PMcreamy-potato-29402
05/23/2019, 4:18 PMcreamy-jelly-91590
05/23/2019, 4:19 PMcreamy-potato-29402
05/23/2019, 4:19 PMcreamy-jelly-91590
05/23/2019, 4:20 PMcreamy-potato-29402
05/23/2019, 4:20 PMcreamy-jelly-91590
05/23/2019, 4:21 PMcreamy-potato-29402
05/23/2019, 4:21 PMcreamy-jelly-91590
05/23/2019, 4:21 PMcreamy-potato-29402
05/23/2019, 4:21 PMcreamy-jelly-91590
05/23/2019, 4:24 PMcreamy-potato-29402
05/23/2019, 4:27 PMcreamy-jelly-91590
05/23/2019, 4:55 PM