This is fairly straight forward in Redshift.  A recursive CTE can be use to make the list of dates and some simple formatting can be used to get the fields you desire.  This example makes all the dates from Jan 1, 2020 until today.
with recursive dates(dt) as
( select '2020-01-01'::date as dt
  union all
  select dt + 1
  from dates d
  where d.dt <= current_date 
  )
 select dt, extract(year from dt) as year, extract(month from dt) as month,
    decode(month, 1, 'January', 2, 'February', 3, 'March', 4, 'April', 5, 'May', 6, 'June', 7, 'July', 8, 'August', 9, 'September', 10, 'October', 11, 'November', 12, 'December') as mname,
    year * 100 + month as yearmo, mname || year::text as monameyr
 from dates order by dt;