Selamlar Arkadaşlar benim içinde çok yeni olan ama keşfettikce hoşuma giden yeni bir programın kurulumuyla karşınızdayım. API Gateway‘lerden biri olan APISIX kurulumunu Ubuntu 20.04 üzerinde yapacağız. Api Gateway nedir diye sorduğunuzu duyuyorum ancak nedirden daha çok nasıl kurulura bakacağız bu yazımızda.
Gereksinimlerden biri Ubuntu 20.04 üzerine Docker kurmanız olacaktır. Kurulum işlemlerini buraya tıklayarak Docker‘ın nasıl kurulacağını yazdığım diğer yazımda bulabilirsiniz.
Kurulum işlemlerini Offical WebSiteleri üzerinden yapacağım. Buraya tıklayarak gerekli Guide‘ı bulabilirsiniz.
LTS Sürümü 2.15 olduğundan dolayı kurulum işlemlerini özelleştirecek ve bu sürümü yükleyeceğim. 3.0 sürümünü yükledim ancak Dashboard üzerinden Route girmeye çalışınca herhangi bir ekleme yapmadığı için bu sürümden ilerleyeceğim.
– Kurulum adımları :
> git clone https://github.com/apache/apisix-docker.git
> cd apisix-docker/example
İlk olarak kodlar yardımıyla Docker‘da çalıştıracağımız dosyaları indiriyoruz. Bu şekilde Docker run komudunu çalıştırırsanız en son sürümü çekiyor bundan dolayı docker-compose.yml dosyasında değişiklikler yapacağım.
> nano docker-compose.yml
Kodu ile Compose dosyasının içerisine giriyorum ve Docker Hub sitesinden aldığım sürüm bilgileri ile içerisini değiştiriyorum. Ben burada sadece Dashboard bilgisini değiştiriyorum. Apisix‘in daha eski sürümlerini yüklemek isterseniz aynı şekilde sizde Docker Hub üzerinden eski sürümleir bulabilir ve burayı düzenleyerek yükleme yapabilirsiniz.
Dashboard Image Name : apache/apisix-dashboard:2.11-alpine
Apisix Image Name : apache/apisix:2.15.1-debian
Dosyayı kayıt ederek çıkıyorum.
> docker-compose -p docker-apisix up -d
Kodu yardımıyla gerekli olan yüklemeleri başlatıyoruz.
– Dashboard’a Erişmek :
Daha sonra Dashboard‘a erişebilmeniz için cihazınızın ip’sini yazıyorsunuz ve sonuna :9000 portunu ekliyorsunuz.
– Route Örneği :
Sitesinde bulunan Route örneğini kullanarak çalışıp çalışmadığını test edebilirsiniz. Buradaki linke tıklayarak Create Route alanına gidin ve oradaki kodları alarak uygulayın.
Route Oluşturma :
> curl "http://127.0.0.1:9180/apisix/admin/routes/1" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1" -X PUT -d '
{
"methods": ["GET"],
"host": "example.com",
"uri": "/anything/*",
"upstream": {
"type": "roundrobin",
"nodes": {
"httpbin.org:80": 1
}
}
}'
Route Test Etme :
> curl -i -X GET "http://127.0.0.1:9080/anything/foo?arg=10" -H "Host: example.com"
Admin API Key Değiştirme :
> nano apisix_conf/config.yaml
Dosyasını açıyorsunuz ve Admin_key olan alanda key sütununu bulup değişiklikleri yapıyorsunuz.
> docker exec -it a66f00934c30 apisix reload
Daha sonra Container ID‘yi kullanarak Apisix‘e Restart atıyorsunuz ve şifremiz değişmiş oluyor.
Bir yazımında sonuna geldik arkadaşlar. Bu API-Gateway olayı biraz yeni benim için ancak üzerinde çalışıyoruz ve öğrendiğim yaptığım her adımı sizinle paylaşacağım. Aynı şekilde video olarak Youtube kanalımada koyacağım. Destekleriniz için kanalıma Abone olmanızı rica edebilirim. 🙂
Yorum ve görüşleriniz için ise yorumlar alanını kullanabilirsiniz. İyi okumalar ve kolaylıklar dilerim.