{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/65502","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/65502/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/65502/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/65502/events","html_url":"https://github.com/kubernetes/kubernetes/issues/65502","id":336015274,"node_id":"MDU6SXNzdWUzMzYwMTUyNzQ=","number":65502,"title":"Support startup dependencies between containers on the same Pod","user":{"login":"nmittler","id":6493296,"node_id":"MDQ6VXNlcjY0OTMyOTY=","avatar_url":"https://avatars3.githubusercontent.com/u/6493296?v=4","gravatar_id":"","url":"https://api.github.com/users/nmittler","html_url":"https://github.com/nmittler","followers_url":"https://api.github.com/users/nmittler/followers","following_url":"https://api.github.com/users/nmittler/following{/other_user}","gists_url":"https://api.github.com/users/nmittler/gists{/gist_id}","starred_url":"https://api.github.com/users/nmittler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nmittler/subscriptions","organizations_url":"https://api.github.com/users/nmittler/orgs","repos_url":"https://api.github.com/users/nmittler/repos","events_url":"https://api.github.com/users/nmittler/events{/privacy}","received_events_url":"https://api.github.com/users/nmittler/received_events","type":"User","site_admin":false},"labels":[{"id":267761362,"node_id":"MDU6TGFiZWwyNjc3NjEzNjI=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/kind/feature","name":"kind/feature","color":"c7def8","default":false},{"id":617149945,"node_id":"MDU6TGFiZWw2MTcxNDk5NDU=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/needs-sig","name":"needs-sig","color":"ededed","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-06-26T22:33:54Z","updated_at":"2018-06-26T22:33:55Z","closed_at":null,"author_association":"NONE","body":"/kind feature\r\n\r\nThis is a proposed kubernetes feature to address an issue we're seeing on Istio. I'm definitely open for alternative approaches, but I feel that this may be a generally useful feature for Kubernetes.\r\n\r\nBackground: \r\n\r\nIstio pods have a sidecar container (called \"istio-proxy\") which runs an Envoy proxy. All traffic in and out of the pod is redirected (via iptables) through Envoy. Kubernetes starts both the application and istio-proxy at the same time, and as soon as the application shows \"healthy\", it can start receiving traffic. However, if Envoy has not yet received its initial configuration from Pilot (the configuration service), the service will experience temporary traffic loss until Envoy is configured. \r\n\r\nWe're currently recommending that developers solve this problem themselves by running a startup script on their application container which delays application startup until Envoy has received its initial configuration.  However, this is a bit of a hack and requires changes to every one of the developer's containers.\r\n\r\nProposal:\r\n\r\nIn my mind, this situation would be better if we could make the startup of one container on the Pod dependent on a healthy status of another container.  This way, we can provide an Envoy health check that confirms that it's received configuration from Pilot, thus triggering the startup of the application container automatically.  No custom scripts, or manual steps at all.\r\n"},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/400484582","html_url":"https://github.com/kubernetes/kubernetes/issues/65502#issuecomment-400484582","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/65502","id":400484582,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMDQ4NDU4Mg==","user":{"login":"k8s-ci-robot","id":20407524,"node_id":"MDQ6VXNlcjIwNDA3NTI0","avatar_url":"https://avatars0.githubusercontent.com/u/20407524?v=4","gravatar_id":"","url":"https://api.github.com/users/k8s-ci-robot","html_url":"https://github.com/k8s-ci-robot","followers_url":"https://api.github.com/users/k8s-ci-robot/followers","following_url":"https://api.github.com/users/k8s-ci-robot/following{/other_user}","gists_url":"https://api.github.com/users/k8s-ci-robot/gists{/gist_id}","starred_url":"https://api.github.com/users/k8s-ci-robot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/k8s-ci-robot/subscriptions","organizations_url":"https://api.github.com/users/k8s-ci-robot/orgs","repos_url":"https://api.github.com/users/k8s-ci-robot/repos","events_url":"https://api.github.com/users/k8s-ci-robot/events{/privacy}","received_events_url":"https://api.github.com/users/k8s-ci-robot/received_events","type":"User","site_admin":false},"created_at":"2018-06-26T22:33:55Z","updated_at":"2018-06-26T22:33:55Z","author_association":"COLLABORATOR","body":"@nmittler: There are no sig labels on this issue. Please add a sig label.\n\n<details>\n\nA sig label can be added by either:\n\n1. mentioning a sig: `@kubernetes/sig-<group-name>-<group-suffix>`\n    e.g., `@kubernetes/sig-contributor-experience-<group-suffix>` to notify the contributor experience sig, OR\n\n2. specifying the label manually: `/sig <group-name>`\n    e.g., `/sig scalability` to apply the `sig/scalability` label\n\nNote: Method 1 will trigger an email to the group. See the [group list](https://git.k8s.io/community/sig-list.md).\nThe `<group-suffix>` in method 1 has to be replaced with one of these: _**bugs, feature-requests, pr-reviews, test-failures, proposals**_\n\nInstructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.\n</details>"}}
{"actor":{"display_login":"k8s-ci-robot"}}