kubernetes | Production-Grade Container Scheduling and Management | Continuous Deployment library
kandi X-RAY | kubernetes Summary
kandi X-RAY | kubernetes Summary
Kubernetes, also known as K8s, is an open source system for managing containerized applications across multiple hosts. It provides basic mechanisms for deployment, maintenance, and scaling of applications. Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale using a system called Borg, combined with best-of-breed ideas and practices from the community. Kubernetes is hosted by the Cloud Native Computing Foundation (CNCF). If your company wants to help shape the evolution of technologies that are container-packaged, dynamically scheduled, and microservices-oriented, consider joining the CNCF. For details about who's involved and how Kubernetes plays a role, read the CNCF announcement.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of kubernetes
kubernetes Key Features
kubernetes Examples and Code Snippets
Community Discussions
Trending Discussions on kubernetes
QUESTION
I have microk8s v1.22.2 running on Ubuntu 20.04.3 LTS.
Output from /etc/hosts
:
ANSWER
Answered 2021-Oct-10 at 18:29error: unable to recognize "ingress.yaml": no matches for kind "Ingress" in version "extensions/v1beta1"
QUESTION
I just switched from ForkPool to gevent with concurrency (5) as the pool method for Celery workers running in Kubernetes pods. After the switch I've been getting a non recoverable erro in the worker:
amqp.exceptions.PreconditionFailed: (0, 0): (406) PRECONDITION_FAILED - delivery acknowledgement on channel 1 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more
The broker logs gives basically the same message:
2021-11-01 22:26:17.251 [warning] <0.18574.1> Consumer None4 on channel 1 has timed out waiting for delivery acknowledgement. Timeout used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more
I have the CELERY_ACK_LATE
set up, but was not familiar with the necessity to set a timeout for the acknowledgement period. And that never happened before using processes. Tasks can be fairly long (60-120 seconds sometimes), but I can't find a specific setting to allow that.
I've read in another post in other forum a user who set the timeout on the broker configuration to a huge number (like 24 hours), and was also having the same problem, so that makes me think there may be something else related to the issue.
Any ideas or suggestions on how to make worker more resilient?
...ANSWER
Answered 2022-Mar-05 at 01:40For future reference, it seems that the new RabbitMQ versions (+3.8) introduced a tight default for consumer_timeout
(15min I think).
The solution I found (that has also been added to Celery docs not long ago here) was to just add a large number for the consumer_timeout
in RabbitMQ.
In this question, someone mentions setting consumer_timeout to false, in a way that using a large number is not needed, but apparently there's some specifics regarding the format of the configuration for that to work.
I'm running RabbitMQ in k8s and just done something like:
QUESTION
Github Actions were working in my repository till yesterday. I didnt make any changes in .github/workflows/dev.yml file or in DockerFile.
But, suddenly in recent pushes, my Github Actions fail with the error
Setup, Build, Publish, and Deploy
...
ANSWER
Answered 2021-Jul-27 at 13:24I fixed it by changing uses
value to
uses: google-github-actions/setup-gcloud@master
QUESTION
I run prometheus locally as http://localhost:9090/targets with
...ANSWER
Answered 2021-Dec-28 at 08:33There are many agents capable of saving metrics collected in k8s to remote Prometheus server outside the cluster, example Prometheus itself now support agent mode, exporter from Opentelemetry, or using managed Prometheus etc.
QUESTION
Whenever I am trying to run the docker images, it is exiting in immediately.
...ANSWER
Answered 2021-Aug-22 at 15:41Since you're already using Docker
, I'd suggest using a multi-stage build. Using a standard docker image like golang
one can build an executable asset which is guaranteed to work with other docker linux images:
QUESTION
init container
is a great feature in Kubernetes and I wonder whether docker-compose supports it? it allows me to run some command before launch the main application.
I come cross this PR https://github.com/docker/compose-cli/issues/1499 which mentions to support init container. But I can't find related doc in their reference.
...ANSWER
Answered 2021-Dec-21 at 14:11This was a discovery for me but yes, it is now possible to use init containers with docker-compose
since version 1.29 as can be seen in the PR you linked in your question.
Meanwhile, while I write those lines, it seems that this feature has not yet found its way to the documentation
You can define a dependency on an other container with a condition being basically "when that other container has successfully finished its job". This leaves the room to define containers running any kind of script and exit when they are done before an other dependent container is launched.
To illustrate, I crafted an example with a pretty common scenario: spin up a db container, make sure the db is up and initialize its data prior to launching the application container.
Note: initializing the db (at least as far as the official mysql image is concerned) does not require an init container so this example is more an illustration than a rock solid typical workflow.
The complete example is available in a public github repo so I will only show the key points in this answer.
Let's start with the compose file
QUESTION
In my gitlab CI I always get this hint messages. Yes, I see I have to set git config --global init.defaultBranch main
, but everything I'm adding in my stages / jobs of the CI gitlab config is executed after fetching.
ANSWER
Answered 2022-Jan-13 at 16:37As far as i experienced, the only way to disable this message is to set the config globally in the .gitconfig
of the user running the gitlab-runner.
This can either be done on the underlying VM if you use the shell-runner or inside the used docker-image when using the docker-runner
Update
Altough it says global
, the git-setting is user based. You'll have to set it as the same user that executes the gitlab-runner.
Depending on the configuration, this might be gitlab-runner
or a custom user on shell-runners or root
when using the docker-executor.
QUESTION
I found a source describing that the default gc used changes depending on the available resources. It seems that the jvm uses either g1gc or serial gc dependnig on hardware and os.
The serial collector is selected by default on certain hardware and operating system configurations
Can someone point out a more detailed source on what the specific criteria is and how that would apply in a dockerized/kubernetes enivronment. In other words:
Could setting resource requests of the pod in k8s to eg. 1500 mCpu make the jvm use serial gc and changing to 2 Cpu change the default gc to g1gc? Do the limits on when which gc is used change depending on jvm version (11 vs 17)?
...ANSWER
Answered 2022-Jan-11 at 10:24In JDK 11 and 17 Serial
collector is used when there is only one CPU available. Otherwise G1
is selected
If you limit the number of CPUS available to your container, JVM selects Serial
instead of the defaultG1
QUESTION
I have just set up a kubernetes cluster on bare metal using kubeadm, Flannel and MetalLB. Next step for me is to install ArgoCD.
I installed the ArgoCD yaml from the "Getting Started" page and logged in.
When adding my Git repositories ArgoCD gives me very weird error messages: The error message seems to suggest that ArgoCD for some reason is resolving github.com to my public IP address (I am not exposing SSH, therefore connection refused).
I can not find any reason why it would do this. When using https:// instead of SSH I get the same result, but on port 443.
I have put a dummy pod in the same namespace as ArgoCD and made some DNS queries. These queries resolved correctly.
What makes ArgoCD think that github.com resolves to my public IP address?
EDIT:
I have also checked for network policies in the argocd namespace and found no policy that was restricting egress.
I have had this working on clusters in the same network previously and have not changed my router firewall since then.
...ANSWER
Answered 2022-Jan-08 at 21:04That looks like argoproj/argo-cd issue 1510, where the initial diagnostic was that the cluster is blocking outbound connections to GitHub. And it suggested to check the egress configuration.
Yet, the issue was resolved with an ingress rule configuration:
need to define in
values.yaml
.
argo-cd
default provide subdomain but in our case it was/argocd
QUESTION
Both replica set and deployment have the attribute replica: 3
, what's the difference between deployment and replica set? Does deployment work via replica set under the hood?
configuration of deployment
...ANSWER
Answered 2021-Oct-05 at 09:41A deployment is a higher abstraction that manages one or more replicasets to provide controlled rollout of a new version.
As long as you don't have a rollout in progress a deployment will result in a single replicaset with the replication factor managed by the deployment.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install kubernetes
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page