OpenShift Local, eski adıyla Code Ready Containers Ortamı ve Kullanımı
Diyelim ki uygulama geliştiricisiniz ve uygulamalarınızı yerelde geliştirirken bir test kubernetes ortamına ihtiyacınız var. Bu noktada elinizde epey fazla alternatifiniz bulunuyor ancak firmanızda OpenShift kullanılıyorsa vanilla k8s üzerinde test yapmanız her zaman uygun olmayabilir.
OpenShift ile ek gelen bazı API'lere erişemezsiniz ve ya güvenlik yönünden OpenShift kadar sıkı olmayan vanilla k8s üzerinde çalıştırdığınız bir uygulamayı üretim ortamına almak istediğinizde hata alabilir, tekrar hata ayıklama yapmak durumunda kalabilirsiniz.
Bu noktada Red Hat uygulama geliştiricilere kendi yerel bilgisayarlarında OpenShift çalıştırabilmelerine olanak veren bir ürünle çözüm sağlıyor. Eski adı Core Ready Containers, yeni adıyla OpenShift Local olan bu ürünle birlikte Windows, Linux ve MacOS işletim sistemi kullanan cihazlarınıza daha lightweight olacak şekilde OpenShift kurulumu yapabiliyor ve platformu deneyimleyebiliyorsunuz.
Ürün ana sayfası şurada: [https://developers.redhat.com/products/openshift-local/](https://developers.redhat.com/products/openshift-local/)
Kuruluma başlamadan önce yapılması gerekenlerden birisi Red Hat sayfasından kendinize bir developer hesabı oluşturmak olacak.
[https://developers.redhat.com/](https://developers.redhat.com/)
Red Hat Developer hesabı oluşturarak OpenShift Local çalıştırmak için gerekli subscriptiona kavuşacağız. Developer Subscriptionu ile beraber sadece OpenShift Local için erişim değil farklı ürünleri de deneyebileceğiniz, Red Hat'in ücretsiz olarak temin ettiği e-book'lara ulaşabileceğiniz bir erişim elde ettiğinizi de belirtelim.
Developer hesabımızı açtıktan ve login olduktan sonra Red Hat Hybrid Console üzerinden kümemizi kurmak için gerekli adımları takip edelim.
[https://console.redhat.com/openshift/create/local](https://console.redhat.com/openshift/create/local)
Hangi işletim sistemini kullanıyorsanız ilgili installer'ı indirdikten sonra arşiv içinden çıkan installer ile kurulumu başlatabiliriz. Ben Windows işletim sistemi kullandığım için kurulum sihirbazının yönlendirmelerine göre kuruluma devam ediyorum.
Kurulum özel br soru sormuyor, tüm pencerelere ileri diyerek kurulum tamamlanabilir.
Kurulum tamamlandıktan sonra powershell açıp "crc setup" komutunu çalıştırmamız gerekiyor. Bu komutla beraber işletim sistemi için gereken bileşenler kuruluyor.
Kurulum tamamlandıktan sonra OpenShift Local'i başlatabilmek için "**crc start**" komutunu çalıştırmamız gerekiyor. Bu noktada cli bize pull secret bilgisi soracak. Bu pull secret daha önce Red Hat Hybrid Console ekranında bize gösterilen pull secret. Hybrid Console üzerinden ilgili pull secret'i da ekledikten sonra Windows makinemiz üzerinde içinde minimal bir OpenShift olan Hyper-V sanal makinesi kurulacak.
Bundan sonra size OpenShift kümesi üzerinde çalışmak kalıyor. :clap:
crc start komutu tamamlandıktan sonra size kurduğu kümeye nasıl erişeceğinizle ilgili api url ve console url bilgisi sağlıyor.
Kümeye login cli ile login olalım ve örnek bir uygulama ayağa kaldıralım.
```yaml
& crc oc-env | Invoke-Expression
oc login -u developer https://api.crc.testing:6443
oc new-project gantek-crc
oc new-app mysql MYSQL_USER=user MYSQL_PASSWORD=pass MYSQL_DATABASE=testdb -l db=mysql
oc get pods;oc get svc
NAME READY STATUS RESTARTS AGE
mysql-655c7464bc-rfswm 1/1 Running 0 4m37s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
mysql ClusterIP 10.217.4.210 3306/TCP 4m38s
```
Yapabildiklerimiz sadece cli ile sınırlı değil, OpenShift Local bize normal bir OpenShift kümesinde de bulunan kullanışlı bir GUI de sağlamakta.
Browser üzerinden aşağıdaki link'e ulaştığınızda sizi full feature bir OpenShift arayüzü karşılıyor olacak.
https://console-openshift-console.apps-crc.testing
Bir sonraki adım olarak bu ortamı geliştirme ortamınız olarak kullanabilir, vsCode üzerindeki eklentilerle geliştirdiğiniz uygulamaların otomatik olarak bu kümede pod olarak kalkmalarını sağlayabilirsiniz.