What is defferent between CNI and CNI plugin? - containerd

I am exploring CNI on Github for using containerd and see they have 2 repos there
CNI and CNI Plugin with different version numbers.
I got a bit confused about the differences between them and where / when should use each of them? Are they the samething or not?

Related

Updating ElasticSearch for Gitlab?

We are running an omnibus version of Gitlab, and need to update to 15.X. However, the instructions state that ElasticSearch must be updated, and that ES is installed separately from GL. From what I am seeing that isn't the case. We did not install ES, instead it appears to have installed with Gitlab as a Ruby gem. Do we still need to update ES manually before the upgrade to GL? Or will it update as a dependency? Any advice here is helpful, we are currently going in circles trying to figure out what needs to happen.
This is only relevant if you have configured the Elasticsearch integration to enable advanced search with Elasticsearch for your GitLab instance. So first check your settings in the admin panel to see if the integration is configured.
If you are not using the integration, then you don't need to worry about updating it and can skip this step for your GitLab upgrade. The ruby elasticsearch gem is just the client library and will be present in any case, so that seems like a red herring for you here.
If you do have the integration configured and are using advanced search, then you must update your ES cluster to 7.x for GitLab 15.0 -- Elasticsearch is NOT bundled with GitLab omnibus or source installations; you must install it (and upgrade it) yourself. From the docs:
Elasticsearch is not included in the Omnibus packages or when you install from source. You must install it separately and ensure you select your version.

Where can I find updated source code for Jorge Acetozi book "Continuous Delivery for Java Apps: Kubernetes and Jenkins in Practice"

I just started reading the Jorge Acetozi book "Continuous Delivery for Java Apps: Kubernetes and Jenkins in Practice".
For the code examples I use the source code in his github repository:
https://github.com/jorgeacetozi
Unfortunately this code doesn't work for Java 11 and uses old Spring Boot 1.5 version
Also Jenkins, Selenium, Kubernetes and Vagrant tools, described in the book, use very old versions.
Has anyone finished this book lately, could you please, provide the updated source code for this book?
Unfortunately, the old source code, prevents me from learning further.
I have managed to finish this book, but did a lot of changes to the source code:
https://github.com/skyglass/notepad - updated source code for Notepad Spring Boot application.
Spring Boot has been updated to version 2.4.2.
I had to make lots of changes to the front-end code, to make styles displayed correctly with the latest version of Thymeleaf library.
Also did some other changes, related to update from Java8 to Java11.
All maven dependencies have been updated to the latest versions
https://github.com/skyglass/jenkins-kubernetes-cd - This repository corresponds to Jorge Acetozi's "ebook-continuous-delivery-with-kubernetes-and-jenkins" repository.
"docker-images" folder contain "jenkins", "kubectl" and "maven-jdk11-git" docker image files, which are used by Jenkins pipelines
Kubernetes yaml files have been updated to the latest version of Kubernetes
Unfortunately, I couldn't manage to make acceptance tests working for "Firefox" browser, with the latest "Selenium Grid" docker images. Therefore, acceptance-tests pipeline code only contains tests with "Chrome" browser
All Jenkins files have been updated to use the latest docker images, or custom docker images, published by me in Skyglass Docker Hub. Feel free to publish them in your own docker hub, using docker files from "docker-images" folder.
"docker-images" folder contains custom docker image to run Jenkins. I recommend using this image to run Jenkins on your computer. It uses the latest version of jenkins for jdk11 and all needed plugins with the latest versions
https://github.com/skyglass/notepad-performance-tests - the performance tests have been updated for the latest versions of Scala, SBT and Gatling.
https://tferdinand.net/en/create-a-local-kubernetes-cluster-with-vagrant/
https://www.exxactcorp.com/blog/HPC/building-a-kubernetes-cluster-using-vagrant
These articles will help you to install Kubernetes Cluster locally, with Vagrant and VirtualBox.
Of course, I also used lot of other online resources. StackOverflow helped me a lot. :)
Have fun reading this book, hope these examples help you get the best learning experience.
Thank you, Jorge Acetozi, for this wonderful book!

Upgrade Omnibus GitLab with additional bundled libraries

We’ve inherited a GitLab instance of 8.15.5 and we’d like to upgrade. I think the initial install was with an Omnibus Package install although I’m not 100% sure. I’m just noticing now that there’s a gitlab-manifest file in /op/gitlab describing all the different bundled libraries that are in this GitLab instance. There may be additional libraries and possible internal tools installed in addition to the out-of-the-box GitLab v8.15.5.
Question is, if I want to upgrade, what would I need to do if I want to upgrade to, say, version 8.17.x ? Do I maybe test, and install v8.15.5 on a test machine to find out what libraries are there (in the gitlab-manifest) which come out of the box in the Omnibus 8.15.5 GitLab package and then check the differences between the two instances - the one in production and the one on my test machine. And then would I just install the missing libraries before upgrading ?

ML model deployment CI/CD

I am training models using MLFlow on DataBricks and outputing the final models onto S3. Than, using Seldon-Core to to package AND deploy the models to AWS EKS.
I am looking for the tool that bridges the gap by taking the model from S3, packages it into a docker container, and using Seldon-Core K8S template to push it to AWS EKS.
I believe the tool that seem to fit the job is Kubeflow Pipelines. Other contenders are Jenkins, Gitlab, and TravisCI.
Is Kubeflow the absolute right tool for the job and what are the pros / cons of Kubeflow vs the other guys? if anyone has already done the research of maybe even built the pipeline...
GitLab actually does exactly what Kubeflow Pipelines out of the box, it is similar Yaml to CircleCI or TravisCI. I ended up using that for an alternative to Kubeflow Pipelines.
Regarding Kubeflow...
After experimenting with Kubeflow at version 0.5 and 0.6 our feeling was that is quite unstable yet. Installation never went smooth neither into MiniKube ( local K8S ) not into the AWS EKS. For MiniKube the install scripts from the documentation are broken and you will be able to see many people having issues and editing the install scripts by hand ( which is what I had to do to get it install properly ). On EKS we were not able to install 0.5 and had to install a much older version. Kubeflow wants to manage worker nodes in a particular manner and our security policies to not allow that, only in an order version you can overwrite that option.
Kubeflow is also switching to Kuztomize and it is not stable yet, so if you use it now you will be using Ksonnet which is not supported anymore and you will learn a tool that you will through out the window sooner or later.
All in all, should wait for version 1.0 but Gitlab does an awesome job as an alternative to kubeflow Pipelines.
Hope this help other who have the same thoughts

Allure plugin for TeamCity: why agent doesn't complete upgrade?

I've asked this question on Gitter, but answer directed me to the documentation I followed.
I'm administrator of TeamCity 2017.2.2 with agents running on Windows 10 (except one on 7). I installed allure-teamcity plugin version 2.6 and added allure tools in version 2.6 as described in the documentation.
The problem is the tool is propagated to the agent on upgrade, but not the plugin itself. Main server shows me the runner I can use as a build step, but once configured none of agents accept this configuration. I've checked agent directory and logs - the plugin is not there and logs doesn't indicate that there was even attempt to pull.
As a holder of commercial license I asked JetBrains technical support, but they told me I need to ask Allure authors. GitHub sends people to Gitter and here, hence the question after unlucky attempt on Gitter.
What do I need to do to get the plugin correctly pulled and working on agents?
Is allure plugin even compatible with TeamCity 2017.2.2?
The problem is that Allure TeamCity plugin looks for a tool called allure-commandline. So you need to make sure that allure-commandline.zip is present in your <TeamCity Data Directory>/plugins/.tools directory.

Resources