<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Disqus - Latest Comments for vitobotta</title><link>http://disqus.com/by/vitobotta/</link><description></description><atom:link href="http://disqus.com/vitobotta/comments.rss" rel="self"></atom:link><language>en</language><lastBuildDate>Fri, 05 Jun 2020 05:34:38 -0000</lastBuildDate><item><title>Re: Full page caching in Rails with Nginx and Redis</title><link>https://vitobotta.com/2020/06/01/full-page-caching-in-rails-with-nginx-and-redis/#comment-4941717217</link><description>&lt;p&gt;Hi Xavier! Thanks for stopping by and for the feedback. Yeah for a single server it's just easier to use the disk, especially with Nginx or other web server that is pretty fast with static files :) In my case I am working on a CMS so I will be caching many (hopefully) user sites and therefore I must be able to share the cache between multiple servers. :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 05 Jun 2020 05:34:38 -0000</pubDate></item><item><title>Re: Rails and Active Storage: permanent URLs with no redirects, using Digital Ocean behind Cloudflare
</title><link>https://vitobotta.com/2019/11/17/rails-active-storage-permanent-urls-with-no-redirects-digital-ocean-spaces-cloudflare/#comment-4932577757</link><description>&lt;p&gt;Yeah I switched to Shrine and haven't looked back. ActiveStorage is just sooo limited. It's supposed to be the easiest out of the box but then you find yourself fighting against it just to customise some obvious things.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 29 May 2020 14:44:26 -0000</pubDate></item><item><title>Re: Rails and Active Storage: permanent URLs with no redirects, using Digital Ocean behind Cloudflare
</title><link>https://vitobotta.com/2019/11/17/rails-active-storage-permanent-urls-with-no-redirects-digital-ocean-spaces-cloudflare/#comment-4931035157</link><description>&lt;p&gt;Hi, unfortunately I am no longer using ActiveStorage.Are you using 6.1 though?&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 28 May 2020 13:01:03 -0000</pubDate></item><item><title>Re: From zero to Kubernetes in Hetzner Cloud with Terraform, Ansible and Rancher
</title><link>https://vitobotta.com/2019/10/14/kubernetes-hetzner-cloud-terraform-ansible-rancher/#comment-4915404034</link><description>&lt;p&gt;I have been using the node driver for Hetzner Cloud for Rancher, (&lt;a href="https://github.com/mxschmitt/ui-driver-hetzner)" rel="nofollow noopener" target="_blank" title="https://github.com/mxschmitt/ui-driver-hetzner)"&gt;https://github.com/mxschmit...&lt;/a&gt; so I can have Rancher create the servers directly. It's a lot easier without the added complexity of Terraform, and for example you can scale nodes with a click on a plus button. You can manage node pools very easily, like with a managed service. Check it out if you haven't already :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 15 May 2020 15:36:41 -0000</pubDate></item><item><title>Re: From zero to Kubernetes in Hetzner Cloud with Terraform, Ansible and Rancher
</title><link>https://vitobotta.com/2019/10/14/kubernetes-hetzner-cloud-terraform-ansible-rancher/#comment-4915397608</link><description>&lt;p&gt;Hi! Hopefully you found a solution in the meantime. Unfortunately I am no longer using Terraform, so I'm not sure of what the problem could be.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 15 May 2020 15:31:06 -0000</pubDate></item><item><title>Re: Storage on Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx
</title><link>https://vitobotta.com/2019/08/06/kubernetes-storage-openebs-rook-longhorn-storageos-robin-portworx/#comment-4915396629</link><description>&lt;p&gt;Yeah, it looks like I missed to add them, sorry! I remember though that I was getting exactly the same read/write speeds and IOPS I got with the volumes directly (300 MB/sec, 7500 IOPS), showing that Linstor adds minimal overhead compared to others. With replication I saw something like 80 MB/sec using Gigabit, if I remember correctly.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 15 May 2020 15:30:17 -0000</pubDate></item><item><title>Re: Storage on Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx
</title><link>https://vitobotta.com/2019/08/06/kubernetes-storage-openebs-rook-longhorn-storageos-robin-portworx/#comment-4915394587</link><description>&lt;p&gt;Hi! Thanks for your comments. I agree with what you said. I did some simple tests though, nothing scientific just to get an idea of what kind of performance I could get out of the box. I didn't proceed with further tests because I started to use the CSI driver for the block storage with my cloud provider directly, without additional software. It's a lot easier for me.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 15 May 2020 15:28:30 -0000</pubDate></item><item><title>Re: Kubernetes over Wireguard VPN with RancherOS
</title><link>https://vitobotta.com/2019/07/17/kubernetes-wireguard-vpn-rancheros/#comment-4903756900</link><description>&lt;p&gt;Hi, yep, I'm using Weave. I guess it was part of the learning process :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Wed, 06 May 2020 15:41:16 -0000</pubDate></item><item><title>Re: Storage on Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx
</title><link>https://vitobotta.com/2019/08/06/kubernetes-storage-openebs-rook-longhorn-storageos-robin-portworx/#comment-4893632365</link><description>&lt;p&gt;Thanks for the feedback!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Tue, 28 Apr 2020 16:40:26 -0000</pubDate></item><item><title>Re: Ubuntu: (almost) full disk encryption with manual partitioning - UEFI mode
</title><link>https://vitobotta.com/2018/01/11/ubuntu-full-disk-encryption-manual-partitioning-uefi/#comment-4890871224</link><description>&lt;p&gt;Hi, unfortunately I can't help much since I switched back to Mac a few years ago and have used Ubuntu only on servers ever since. Sorry!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Sun, 26 Apr 2020 14:39:49 -0000</pubDate></item><item><title>Re: Provisioning, backing up and restoring a highly available Rancher cluster with Terraform
</title><link>https://vitobotta.com/2019/10/26/provisioning-rancher-ha-cluster-with-terraform/#comment-4890870066</link><description>&lt;p&gt;Hi, unfortunately I am not using this setup at the moment so I don't have anything up to date. I had problems a couple of times with Terraform where even some small changes can cause destruction of resources and things like that if you are not careful... It's a great tool but it's kinda overkill for me at the moment.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Sun, 26 Apr 2020 14:38:51 -0000</pubDate></item><item><title>Re: Highly available, external load balancer for Kubernetes in Hetzner Cloud using haproxy and keepalived
</title><link>https://vitobotta.com/2020/03/20/haproxy-kubernetes-hetzner-cloud/#comment-4879166637</link><description>&lt;p&gt;Nice!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 17 Apr 2020 15:16:56 -0000</pubDate></item><item><title>Re: Storage on Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx
</title><link>https://vitobotta.com/2019/08/06/kubernetes-storage-openebs-rook-longhorn-storageos-robin-portworx/#comment-4877043859</link><description>&lt;p&gt;Hi Laurent! You are right, I should have mentioned the versions used. Sorry about that!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 16 Apr 2020 04:06:44 -0000</pubDate></item><item><title>Re: Provisioning, backing up and restoring a highly available Rancher cluster with Terraform
</title><link>https://vitobotta.com/2019/10/26/provisioning-rancher-ha-cluster-with-terraform/#comment-4872527204</link><description>&lt;p&gt;Hi! Thanks for the feedback ;) Unfortunately I have only &lt;a href="https://github.com/vitobotta/terraform-rancher" rel="nofollow noopener" target="_blank" title="https://github.com/vitobotta/terraform-rancher"&gt;https://github.com/vitobott...&lt;/a&gt; as I haven't really extracted much stuff into public repos. I have lots of configuration specific to my environment. :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Mon, 13 Apr 2020 09:34:09 -0000</pubDate></item><item><title>Re: Highly available, external load balancer for Kubernetes in Hetzner Cloud using haproxy and keepalived
</title><link>https://vitobotta.com/2020/03/20/haproxy-kubernetes-hetzner-cloud/#comment-4869090717</link><description>&lt;p&gt;Hi Andrew, just an update. I have been testing MetalLB again after you reminded me about it. Long story short, the first time I tried I couldn't get it to work because I didn't configure all the nodes with the floating IPs. I did this time, and this setup seems to work. See my reply below to another reader for pros and cons of each approach. Cheers&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 10 Apr 2020 12:32:18 -0000</pubDate></item><item><title>Re: Highly available, external load balancer for Kubernetes in Hetzner Cloud using haproxy and keepalived
</title><link>https://vitobotta.com/2020/03/20/haproxy-kubernetes-hetzner-cloud/#comment-4869088652</link><description>&lt;p&gt;Hi Stephan, I am sorry for the delay. You can only create services of type LoadBalancer in Kubernetes with those cloud providers  that support it. That is, cloud providers that a) offer load balancers as a service, b) have an integration of these load balancers with Kubernetes. Otherwise services of type LoadBalancer will remain stuck/pending forever. The load balancer I describe in the article is totally external to Kubernetes, so it must be managed separately. You need to create services of type NodePort (not LoadBalancer) and specify these ports in the haproxy configuration. That's the way it works. There is a third option actually, which is MetalLB. With MetalLB you can create services of type LoadBalancer even with providers that do not support/offer load balancers. I have been testing this again over the past couple of days after another reader mentioned it  and got it working this time (it didn't work the first time I tried it). You can have MetalLB working in Hetzner Cloud using just floating IPs provided that the network interface on all the nodes is configured with these floating IPs. Otherwise it won't work. So what you would need to do to have this working in Hetzner Cloud is 1) configure the floating IPs on the nodes - for this, I wrote some cloud init config/script that you can use (&lt;a href="https://github.com/vitobotta/hetzner-cloud-init)" rel="nofollow noopener" target="_blank" title="https://github.com/vitobotta/hetzner-cloud-init)"&gt;https://github.com/vitobott...&lt;/a&gt; and that will keep the nodes configured with all the floating IPs in the HC project, automatically; 2) install this &lt;a href="https://github.com/cbeneke/hcloud-fip-controller" rel="nofollow noopener" target="_blank" title="https://github.com/cbeneke/hcloud-fip-controller"&gt;https://github.com/cbeneke/...&lt;/a&gt; - it will assign the floating IPs to an healthy node automatically; 3) install MetalLB (&lt;a href="https://metallb.universe.tf/)" rel="nofollow noopener" target="_blank" title="https://metallb.universe.tf/)"&gt;https://metallb.universe.tf/)&lt;/a&gt;. Now you might be wondering, after reading the article, which one should you choose between the haproxy/keepalived setup described in the article, and the MetalLB/floating IPs setup I just mentioned? haproxy/keepalived pros: 1) it is a true highly available load balancer, 2) it has very very fast failover, 3) you can use a single load balancer for multiple applications; haproxy/keepalived cons: it requires two separate, additional servers, albeit cheap. MetalLB/etc pros: 1) it is a solution completely in Kubernetes, 2) it doesn't require additional servers; MetalLB/etc cons: it has a much slower failover compared to haproxy/keepalived. So the choice is up to you depending on your needs and preference. Cheers&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 10 Apr 2020 12:30:48 -0000</pubDate></item><item><title>Re: From zero to Kubernetes in Hetzner Cloud with Terraform, Ansible and Rancher
</title><link>https://vitobotta.com/2019/10/14/kubernetes-hetzner-cloud-terraform-ansible-rancher/#comment-4869070362</link><description>&lt;p&gt;Hi, not sure if you are still having the problem (sorry for the delay), but have you tried restarting CoreDNS?&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 10 Apr 2020 12:17:06 -0000</pubDate></item><item><title>Re: Postgres on Kubernetes with the Zalando operator
</title><link>https://vitobotta.com/2020/02/05/postgres-kubernetes-zalando-operator/#comment-4867757817</link><description>&lt;p&gt;Yeah the documentation could be better. Much of what I wrote in the post I had to figure out myself by looking into the source code etc.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 09 Apr 2020 12:49:10 -0000</pubDate></item><item><title>Re: Postgres on Kubernetes with the Zalando operator
</title><link>https://vitobotta.com/2020/02/05/postgres-kubernetes-zalando-operator/#comment-4867624226</link><description>&lt;p&gt;Uhm perhaps the ID is enough now. Glad you sorted it out!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 09 Apr 2020 11:11:28 -0000</pubDate></item><item><title>Re: Postgres on Kubernetes with the Zalando operator
</title><link>https://vitobotta.com/2020/02/05/postgres-kubernetes-zalando-operator/#comment-4867589222</link><description>&lt;p&gt;Looks like Disqus screws up formatting...&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 09 Apr 2020 10:44:58 -0000</pubDate></item><item><title>Re: Postgres on Kubernetes with the Zalando operator
</title><link>https://vitobotta.com/2020/02/05/postgres-kubernetes-zalando-operator/#comment-4867588630</link><description>&lt;p&gt;Hi! Thanks for the feedback. The easiest way to get the cluster ID is by running "kubectl -n &amp;lt;cluster namespace=""&amp;gt; get postgresql -oyaml | grep uid". I forgot to mention it in the article. It's the same ID you can see as the name of a subdirectory under the spilo tree. The "/" in the suffix is important. It took me a while to figure that out. CLONE_SCOPE is just the name of the old cluster, doesn't need to include the namespace. :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Thu, 09 Apr 2020 10:44:30 -0000</pubDate></item><item><title>Re: From zero to Kubernetes in Hetzner Cloud with Terraform, Ansible and Rancher
</title><link>https://vitobotta.com/2019/10/14/kubernetes-hetzner-cloud-terraform-ansible-rancher/#comment-4863370929</link><description>&lt;p&gt;Hi! As for setting up Rancher, see &lt;a href="https://vitobotta.com/2019/10/26/provisioning-rancher-ha-cluster-with-terraform/" rel="nofollow noopener" target="_blank" title="https://vitobotta.com/2019/10/26/provisioning-rancher-ha-cluster-with-terraform/"&gt;https://vitobotta.com/2019/...&lt;/a&gt; - Cheers, Vito&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Mon, 06 Apr 2020 12:15:40 -0000</pubDate></item><item><title>Re: From zero to Kubernetes in Hetzner Cloud with Terraform, Ansible and Rancher
</title><link>https://vitobotta.com/2019/10/14/kubernetes-hetzner-cloud-terraform-ansible-rancher/#comment-4859345313</link><description>&lt;p&gt;Hi! Where did you save the wrapper script? Is it included in the env PATH?&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Fri, 03 Apr 2020 10:24:47 -0000</pubDate></item><item><title>Re: Highly available, external load balancer for Kubernetes in Hetzner Cloud using haproxy and keepalived
</title><link>https://vitobotta.com/2020/03/20/haproxy-kubernetes-hetzner-cloud/#comment-4847635491</link><description>&lt;p&gt;Hi Andrew, sorry for the delay. MetalLB doesn't work properly in that environment, I think it's because of routing issues or something like that. I can't remember the details but I couldn't get it to work properly and got a confirmation from the devs that it wouldn't work in Hetzner Cloud with floating IPs. Also it wouldn't be a highly available load balancer. Cheers&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Wed, 25 Mar 2020 16:03:52 -0000</pubDate></item><item><title>Re: Storage on Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx
</title><link>https://vitobotta.com/2019/08/06/kubernetes-storage-openebs-rook-longhorn-storageos-robin-portworx/#comment-4832841536</link><description>&lt;p&gt;Hi, thanks for the nice feedback! I didn't try GlusterFS when I wrote the article because I read in several places that it's not very performant when used for block storage volumes. But yeah, perhaps I should give it a try. At the moment I am using  Hetzner Cloud block storage directly with their CSI driver, so I am not using any of the solutions I tested for this article currently.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vito Botta</dc:creator><pubDate>Sat, 14 Mar 2020 11:54:08 -0000</pubDate></item></channel></rss>