profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/zetaron/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Fabian Stegemann zetaron @aidminutes GmbH Hamburg, Germany

fork zetaron/tmux-tilish

Plugin which makes tmux work and feel like i3wm

fork in 7 days

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

@zetaron speaking of: if there's a quickstart guide you could provide on how to bootstrap a DOKS-managed cluster, that'd be great. (Let me know though if that's buried somewhere in the PR.)

An example is currently placed und the ‘templates/test.yaml’ And a template at ‘templates/cluster-template-doks.yaml’

A dedicated quick start is not available for now. In the current state I tested this using the cluster api development setup using tilt.

the makefile would also be an area where I’m not sure how you want it and if what I did there works for you.

zetaron

comment created time in a month

issue closedchdsbd/kodiak

Unable to connect to Redis due to EOF

<!--

  • describe the problem you've encountered and the expected behavior
  • screenshots of branch protection settings and Kodiak messages/behavior are helpful -->

When configuring a self-hosted kodiak bot to connect to a Redis Instance managed by DigitalOcean it fails with the following error message on repeat:

INFO asyncio_redis:connection.py:116 Connecting to redis
INFO asyncio_redis:protocol.py:897 Redis connection made
INFO asyncio_redis:protocol.py:955 EOF received in RedisProtocol
INFO asyncio_redis:protocol.py:979 Redis connection lost
ERROR asyncio:main.py:306 Task exception was never retrieved
future: <Task finished coro= exception=ConnectionLostError(None)>
Traceback (most recent call last):
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 911, in initialize
    yield from self.auth(self.password)
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 733, in wrapper
    result = yield from method(protocol_self, _NoTransaction, *a, **kw)
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 1231, in _query
    transaction, answer_f, _bypass=_bypass, call=call
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 1155, in _get_answer
    result = yield from answer_f
asyncio_redis.exceptions.ConnectionLostError: None

From the DigitalOcean FAQ I take that the EOF error would usualy happen when the connecting client does not support TLS.

Is there a way to use TLS or would that require switching to the official redis library? If switching would be required, how hard would that be? Would you be open to PRs?


How valuable is the data thats stored inside the redis? Would it be bad to loose it?

We are hosting on Kubernetes and I could deploy redis in memory ... but that would be subject to potential rescheduling and movement accross cluster nodes.

closed time in 2 months

zetaron

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

After DigitalOcean set the timeout to 0 the issue got resolved :)

zetaron

comment created time in 2 months

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

Hey just a quick poll if this PR is still on your radar?

Anything I can do to help?

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

After following your hint on timeouts and some research on redis timeouts in relation to DigitalOcean Managed Redis I found this Question on how to set it to 0 (disabled)

The default timeout for the managed Redis seems to be: 300

I've gathered some more logs, but apart from an overwhelming amount of the following lines occurring every 2-3 seconds apart, which now makes total sense since the default connection timeout is 300ms.

2021-07-19T06:59:58.720922295Z INFO asyncio_redis:protocol.py:955 EOF received in RedisProtocol
2021-07-19T06:59:58.720990646Z INFO asyncio_redis:protocol.py:979 Redis connection lost
2021-07-19T06:59:58.720995840Z INFO asyncio_redis:connection.py:118 Connecting to redis
2021-07-19T06:59:58.756137652Z INFO asyncio_redis:protocol.py:897 Redis connection made

I'll try and have DigitalOcean that set to 0 on my kodiak instance by opening a Ticket with them.

Sorry for the comotion but maybe this helps someone else stumbling into similar issues :)

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

I’ll see to get some, in the UI there are timestamps but the downloaded file seems to miss them.

Oddly enough from what I observed it was related to events being handled as it only happened after the first events started coming in no matter how quick or long that took. But I’ll try to solidify that with some more log data maybe a longer timeframe to be able to spot recurrence.

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

Hi, again :)

I've deployed the new Image and after some time observed the EOF coming back bug seemingly recovering. Maybe you know of the top of your head how many locations there are where a redis connection gets created/recreated? Or if the recreation of the connection is expected after it got used for handling an event? I'm currently using a Pool Size of 10.

logs-from-server-in-kodiak-hlztb-deployment-6477778f9b-vwvx7.txt

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

Ah that slipped me when I checked.

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

Great :D thanks for the quick merge!

Would you mind also triggering a release for the docker image?

zetaron

comment created time in 2 months

pull request commentchdsbd/kodiak

introduce ssl/tls support

I'm assuming the tests are failng because the asynci_redis library need merging first before the ssl propery can be passed.

zetaron

comment created time in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

I've created two PRs to implement TLS support:

  • https://github.com/chdsbd/asyncio-redis/pull/6
  • https://github.com/chdsbd/kodiak/pull/695

I did test the change locally using docker-compose against my DigitalOcean managed Redis and the above error did not happen again. Since I'm not too familiar with python and this project in general I was unable to add unit-tests. If that is something you want please feel free to modify my PRs :)

zetaron

comment created time in 2 months

PR opened chdsbd/kodiak

introduce ssl/tls support

In response to https://github.com/chdsbd/kodiak/issues/694 this PR is the preparation for TLS support in kodiaks bot.

This PR requires https://github.com/chdsbd/asyncio-redis/pull/6 to be merged first.

+3 -0

0 comment

1 changed file

pr created time in 2 months

PR opened chdsbd/asyncio-redis

passthrough ssl connection property

In response to https://github.com/chdsbd/kodiak/issues/694 this PR is the preparation for TLS support in kodiaks bot.

+4 -2

0 comment

1 changed file

pr created time in 2 months

create barnchzetaron/kodiak

branch : feat/support-tls

created branch time in 2 months

create barnchzetaron/asyncio-redis

branch : feat/support-tls

created branch time in 2 months

fork zetaron/kodiak

🔮 A bot to automatically update and merge GitHub PRs

https://kodiakhq.com

fork in 2 months

fork zetaron/asyncio-redis

Redis client for Python asyncio (PEP 3156)

http://asyncio-redis.readthedocs.org/

fork in 2 months

issue commentchdsbd/kodiak

Unable to connect to Redis due to EOF

Thanks for your quick reply :)

I'll attempt to update your fork of the asyncio_redis library to support TLS, huge thanks for the pointers.

DigitalOceans private networking still (from what I see) requires TLS to connect.

zetaron

comment created time in 2 months

issue openedchdsbd/kodiak

Unable to connect to Redis due to EOF

<!--

  • describe the problem you've encountered and the expected behavior
  • screenshots of branch protection settings and Kodiak messages/behavior are helpful -->

When configuring a self-hosted kodiak bot to connect to a Redis Instance managed by DigitalOcean it fails with the following error message on repeat:

INFO asyncio_redis:connection.py:116 Connecting to redis
INFO asyncio_redis:protocol.py:897 Redis connection made
INFO asyncio_redis:protocol.py:955 EOF received in RedisProtocol
INFO asyncio_redis:protocol.py:979 Redis connection lost
ERROR asyncio:main.py:306 Task exception was never retrieved
future: <Task finished coro= exception=ConnectionLostError(None)>
Traceback (most recent call last):
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 911, in initialize
    yield from self.auth(self.password)
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 733, in wrapper
    result = yield from method(protocol_self, _NoTransaction, *a, **kw)
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 1231, in _query
    transaction, answer_f, _bypass=_bypass, call=call
  File "/var/app/.venv/src/asyncio-redis/asyncio_redis/protocol.py", line 1155, in _get_answer
    result = yield from answer_f
asyncio_redis.exceptions.ConnectionLostError: None

From the DigitalOcean FAQ I take that the EOF error would usualy happen when the connecting client does not support TLS.

Is there a way to use TLS or would that require switching to the official redis library? If switching would be required, how hard would that be? Would you be open to PRs?


How valuable is the data thats stored inside the redis? Would it be bad to loose it?

We are hosting on Kubernetes and I could deploy redis in memory ... but that would be subject to potential rescheduling and movement accross cluster nodes.

created time in 2 months

issue commentnextcloud/nextcloud-snap

Automatic upgrade of Nextcloud to 21.0.3snap1 breaks Apache, PHP-FPM, MySQL from loading

We too got surprised by this, in our case it seemd to be the mail app which got itself into a broken migration state, after removing it (which was ok in our case) our nextcloud was available again.

Maybe try running nextcloud.occ upgrade command by hand, for us it failed with something provisioning_id ... something. The apache not coming up seems related since the apache server runs an installer script which would also fail on the mail apps migration.

danielhmetro

comment created time in 2 months

push eventzetaron/cluster-api-provider-digitalocean

fst

commit sha d16de105dde02b032b6278a2eb019bfc70c5fcb6

fix: replace boilerplate header

view details

push time in 2 months

push eventzetaron/cluster-api-provider-digitalocean

fst

commit sha a9d664b5a9832c80e310d25a71d15f00e19d071c

fix: make lint

view details

push time in 2 months

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

@timoreimann Since this PR got quite a few Files changed, you (or any other person attempting to review this) may call me on Slack and I'll try give you a quick rundown of what I think the relevant sections are. I'm known on Slack by the handle zetaron and am on CETS, generally available between 9:00-18:00.

I'm also open to discussing the overall Architecture for DOKS Clusters to be integrated well.


I tried to dig around how this project writes unit tests but am unable to get a clear picture. Is testing something that is implemented against the cluster-api spec and therefore no implementation specific tests are required?

Maybe someone could point me to a good place to start?

zetaron

comment created time in 2 months

push eventzetaron/cluster-api-provider-digitalocean

Carlos Tadeu Panato Junior

commit sha 45e0bd14d72e1ecde2ab9efe6246bead7fa8f974

Update CAPI to v0.4.0 (#266) Signed-off-by: Carlos Panato <ctadeu@gmail.com>

view details

Praveen Ghuge

commit sha 6e448e125f44c08c614f36fce51f9aab5ba895ac

master to main cleanup (#267)

view details

fst

commit sha 387e6cd04b1e0794b620c480ed0a61dd0858f032

install kubebuilder

view details

fst

commit sha 26daae361661f3d6028518a06be78a5167e54a97

generate api and controller for DOKSCluster kubebuilder create api --group infrastructure --version v1alpha4 --kind DOKSCluster

view details

fst

commit sha aeae4e97514843d698ae227d2b5f6e7cdf7dd27a

generate api for DOKSMachineTemplate kubebuilder create api --group infrastructure --version v1alpha4 --kind DOKSMachineTemplate

view details

fst

commit sha 32cefd10306d3cd6e870df0a867bfcd5db9b8b8f

initialize controlplane/doks and generate api and controler

view details

fst

commit sha f41918cafef2b8ffa74f470732c5b3abfd7feab5

make doks-controlplane known to tilt

view details

fst

commit sha 4bc4374e6b265b599669c6e18f44212c556ca670

fix kubebuilder automatically registers schema

view details

fst

commit sha d0c2da92fee14f338d6ad2eabab346f9b8460188

generate doks-controlplane manifests

view details

fst

commit sha 8943ee632e1f612833ba94afff8bc32579b06e4d

remove DOKSMachineTemplate

view details

fst

commit sha a2ec91147ab63dba49195500e1c0804a7c1edea3

generate DOKSNodePool

view details

fst

commit sha 6927064c8d630840ac38dd0db1c33b6a5963a7f3

define required DOKS API fields

view details

fst

commit sha f52d5f8a9433714803bf4684bcff60727de5a3b5

fix DOKS Control Plane Deployment with tilt

view details

fst

commit sha 6e624530418b24b5b5bc451d28aa92362614c95f

initialize DOKS bootstrap

view details

fst

commit sha b3439f90f731fc1c474153f34dda84c9155d1f54

generate DOKSBootstrapConfig API no controller

view details

fst

commit sha 94a5d03cfaf883c7abcbbf4b016ad6ea6922682e

Revert "generate DOKSBootstrapConfig API no controller" This reverts commit 132d26bd8939bceb9ed600cb0d831a72478a2a01.

view details

fst

commit sha 13a8e78598e6c89b269205cfa3a95479b6ccc9fc

generate DOKSBootstrapConfig API

view details

fst

commit sha 7f146f7427424b7b8b0d644261d62149d6aac1aa

generate code and fix tilt deployment

view details

fst

commit sha b7d0711555854cb3b5a7208742f717e3430e75cb

success deploying templates/test.yaml tilt-settings.json { provider_repos: [../cluster-api-provider-digitalocean], enable_providers: [digitalocean, doks-controlplane, doks-bootstrap], kustomize_substitutions: { EXP_CLUSTER_RESOURCE_SET: true, EXP_MACHINE_POOL: true } }

view details

fst

commit sha f80b60c5c5fd59988ba2c007bda1e1e04edc8009

WIP List DOKSNodePool resources during cluster creation

view details

push time in 2 months

push eventzetaron/cluster-api-provider-digitalocean

Carlos Tadeu Panato Junior

commit sha 45e0bd14d72e1ecde2ab9efe6246bead7fa8f974

Update CAPI to v0.4.0 (#266) Signed-off-by: Carlos Panato <ctadeu@gmail.com>

view details

Praveen Ghuge

commit sha 6e448e125f44c08c614f36fce51f9aab5ba895ac

master to main cleanup (#267)

view details

push time in 2 months

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

@zetaron can you rebase your PR and resolve the conflicts?

Will do. After the first round of review and solidifying where this will go, I'll also add some tests - but need some time to familiarise myself with how this is done with kubernetes and go.

zetaron

comment created time in 2 months

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

@k8s-ci-robot CLA should be signed

zetaron

comment created time in 2 months

pull request commentkubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

@timoreimann Will sign the CLA.

Regarding the managing a managed Cluster, this kind feature is available with the AWS cluster-api implementation for their EKS offering.

zetaron

comment created time in 2 months

PR opened kubernetes-sigs/cluster-api-provider-digitalocean

Introduce DOKS Cluster Support

What this PR does / why we need it:

This PR provides CRDs and Controllers for maintaining DigitalOcean Managed DOKS Clusters.

My Team and I want to use the DOKS service for our kubernetes clusters and want to manage them using Cluster-API.

Special notes for your reviewer:

  • I am a beginner regarding go and kubernetes related development.
  • I did not yet write tests, will need to learn how to and wanted to get some Feedback on this first.
  • This PR for now does not map all the fields available via the DigitalOcean API.
  • I've extended theMakefile to also build parts of the bootstrap and controlplane components but am not sure this is enough as I know too little of the greater Build System.
  • I was unsure as to how to use/integrate with the experimental MachinePool feature which I used to map to DOKS NodePools, so I just used it like any other.
  • Since this is a new feature I wasn't shure if a converstion fromv1alpha3 would be needed, so that is currently not included.

Release note: <!-- Write your release note:

  1. Enter your extended release note in the below block. If the PR requires additional action from users switching to the new release, include the string "action required".
  2. If no release note is required, just write "NONE". -->
Support for DOKS Clusters added
+4973 -20

0 comment

110 changed files

pr created time in 2 months