Golang News http://golangnews.com Jobs, Code, Videos and News for Go hackers - everything about the go programming language Mon, 26 Mar 2018 18:36:00 +0000 Write a Kubernetes-ready service from zero step-by-step #k8s If you have ever tried Go, you probably know that writing services with Go is an easy thing. Yes, we really need <a href="https://github.com/rumyantseva/advent-2017/commit/76864ab0587dd9a599752ed090f618749b6bfe0c" style="color: rgb(0, 136, 204); font-size: 13px; -webkit-text-size-adjust: 100%;">only few lines</a>&nbsp;to be able to run http service. But what do we need to add if we want to prepare our service for production? Let’s discuss it by an example of a service which is ready to be run in <a href="http://kubernetes.io/" style="color: rgb(0, 136, 204); font-size: 13px; -webkit-text-size-adjust: 100%;">Kubernetes</a>.<br> 15 points posted by kenny https://blog.gopheracademy.com/advent-2017/kubernetes-ready-service/ 3029 Sun, 17 Dec 2017 19:48:00 +0000 You might not need kubernetes #k8s 8 points posted by kenny https://blog.jessfraz.com/post/you-might-not-need-k8s 3646 Tue, 06 Nov 2018 11:02:00 +0000 Kubernetes at github #k8s 8 points posted by kenny https://githubengineering.com/kubernetes-at-github 2525 Wed, 16 Aug 2017 18:13:00 +0000 Introducing conduit - a service mesh for kubernetes #k8s <p>Today, we’re very happy to introduce <a href="http://conduit.io/" style="box-sizing: border-box; margin: 0px; padding: 0px; border: 0px; outline: 0px; font-variant: inherit; font-stretch: inherit; font-size: 1rem; line-height: 1.6; vertical-align: baseline; color: rgb(0, 149, 254); letter-spacing: 0rem;">Conduit</a>, our new open source service mesh for Kubernetes.</p> <p>We’ve built Conduit from the ground up to be the fastest, lightest, simplest, and most secure service mesh in the world. It features an incredibly fast and safe data plane written in <a href="https://www.rust-lang.org/" style="box-sizing: border-box; margin: 0px; padding: 0px; border: 0px; outline: 0px; font-variant: inherit; font-stretch: inherit; font-size: 1rem; line-height: 1.6; vertical-align: baseline; color: rgb(0, 149, 254); letter-spacing: 0rem;">Rust</a>, a simple yet powerful control plane written in <a href="https://golang.org/" style="box-sizing: border-box; margin: 0px; padding: 0px; border: 0px; outline: 0px; font-variant: inherit; font-stretch: inherit; font-size: 1rem; line-height: 1.6; vertical-align: baseline; color: rgb(0, 149, 254); letter-spacing: 0rem;">Go</a>, and a design that’s focused on performance, security, and&nbsp;usability. Most importantly, Conduit incorporates the many lessons we’ve learned from over 18 months of production service mesh experience with <a href="https://linkerd.io/" style="box-sizing: border-box; margin: 0px; padding: 0px; border: 0px; outline: 0px; font-variant: inherit; font-stretch: inherit; font-size: 1rem; line-height: 1.6; vertical-align: baseline; color: rgb(0, 149, 254); letter-spacing: 0rem;">Linkerd</a>.</p><div><br></div> 4 points posted by kenny https://buoyant.io/2017/12/05/introducing-conduit 2990 Tue, 05 Dec 2017 16:14:00 +0000 ldapauthn - Webhook OpenLdap server for k8s written in go #authn #k8s #kubernetes #webhook <pre style="overflow-wrap: break-word; white-space: pre-wrap;"> <h2>LdapAuthn</h2> <h3>Description</h3> LdapAuthn is a simple go web server that integrates with your OpenLDAP instance to handle k8s webook `TokenReview` requests <h2>Specifications</h2>LdapAuthn can run as binary or in a docker container and exposes on the port `8082` the following endpoints (more details on <a href="https://github.com/almartino/ldapauthn">https://github.com/almartino/ldapauthn</a>): </pre><pre style="overflow-wrap: break-word; white-space: pre-wrap;"> <ul><li>/ (webhook endpoint)</li> <li>/health (health endpoint)</li> </ul></pre><pre style="overflow-wrap: break-word; white-space: pre-wrap;"> <h4>Details for Webhook endpoint</h4> When a `TokenReview` hits the webhook endpoint by default the following error responses can occurs (details of status codes on <a href="https://github.com/almartino/ldapauthn">https://github.com/almartino/ldapauthn</a>): <br></pre><pre><ul style=""><li style="white-space: pre-wrap;">400 | BadRequest </li><li style="white-space: pre-wrap;">401 | Unauthorized </li><li style="">403 | Forbidden</li><li style="">405 | MethodNotAllowed</li><li style="">406 | NotAcceptable</li><li style="">500 | InternalServerError</li> </ul><h5>Env</h5>LdapAuthn is docker ready. I choosed to configure the application via env variables.</pre><pre><i>See <a href="https://github.com/almartino/ldapauthn" style="font-size: 15.6px;">https://github.com/almartino/ldapauthn</a> for the complete list of env variables.</i></pre><pre> <h4>Init</h4> <h5><i>Direct</i></h5>```bash LDAP_URL='ldap://LDAP_HOST:389' \ LDAP_ADMIN_DN='cn=admin,dc=example,dc=org' \ LDAP_ADMIN_PASSWORD='PASSWORD' LDAP_BASE_DN='dc=example,dc=org' \ LDAP_USER_PREFIX='ou=people,ou=users' \ LDAP_UID_ATTR='uid' authn ```</pre><pre><br> <h5><i>Docker</i></h5> ```bash docker run -e LDAP_URL='ldap://LDAP_HOST:389' \ -e LDAP_ADMIN_DN='cn=admin,dc=example,dc=org' \ -e LDAP_ADMIN_PASSWORD='PASSWORD' LDAP_BASE_DN='dc=example,dc=org' \ -e LDAP_USER_PREFIX='ou=people,ou=users' \ -e LDAP_UID_ATTR='uid' almartino/ldapauthn:latest ```</pre><pre> <h5><i>Helm</i></h5><br></pre><pre>Coming soon ...</pre> 3 points posted by hankmartinez https://github.com/almartino/ldapauthn 4378 Sat, 13 Jun 2020 15:28:00 +0000